Platform for publishing graphics to air

ABSTRACT

A graphics building interface for generating a digital graphic is provided to be displayed by and interacted with via a user computing entity. A graphics object is generated. The graphics object is a data structure comprising predetermined fields and predetermined structure information. User input selecting a first selectable option is received. The user input is received via the graphics building interface. At least one pathname corresponding to the first selectable option is identified. The graphics object is updated based on the at least one pathname and the first selectable option. The updated of the graphics object comprises updating two or more fields of the predetermined set of fields. One of the fields is updated at least in part by populating the field with the pathname. The pathname indicates a file, a location within the file, or both where a content item corresponding to the first selectable option is stored.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/924,807, filed Mar. 19, 2018, which claims priority to U.S. PatentApplication Ser. No. 62/477,571, filed on Mar. 28, 2017, which is herebyincorporated herein in its entirety by reference.

FIELD

Various example embodiments relate to publishing graphics to air as partof a media event. An example embodiment relates to publishing graphicsto air as part of a live media event. An example embodiment relates togenerating graphics to be aired as part of a live media event before thebeginning of the media event.

BACKGROUND

Traditionally, when producing a media production, a producer or editorrelies on a specialized graphics operator to create screen graphics forbroadcasting as part of the media production. Shortcomings of thisprocess may be especially apparent during production of a live mediaproduction, such as a live sporting event and/or the like. For example,the specialized graphics operator would need to create sporting eventappropriate graphics (e.g., with the correct team colors and/or logo)with current statistics for the sporting event in real time during thelive production by identifying the pathname, file name, file path,and/or the like (referred to as a pathname herein) for the variousgraphic elements, correctly typing real time and/or near real timestatistics, and/or the like. This process is inefficient and can lead toerrors in the graphics played live to air.

Therefore, a need exists for improved methods, apparatus, systems,computer program products, computing devices, computing entities, and/orthe like for producing, generating, publishing, and/or renderinggraphics for broadcasting as part of a media production.

BRIEF SUMMARY OF SOME EXAMPLE EMBODIMENTS

Various example embodiments provide systems, methods, computingentities, apparatuses, computer program products and/or the like forproviding a user-friendly graphics building interface (GBI) andcorresponding graphics building platform for quickly and efficientlygenerating graphics to be aired as part of a media event. Variousexample embodiments provide systems, methods, computing entities,apparatuses, computer program products and/or the like for providing auser-friendly GBI and corresponding graphics building platform forquickly and efficiently generating graphics to be aired as part of alive media event before the live media event starts and/or during thelive media event. For example, in various embodiments, user selection ofa template may cause the generation of a graphics object encoding agraphic having predetermined structural information/data and apredetermined set of fields. In an example embodiment, the fields may betext fields or content fields. In an example embodiment, the contentfields may comprise pathnames and/or file paths to one or more contentitems. The content items may comprise graphical content (e.g., logos,photographs, images, and/or the like) and non-graphical content (e.g.,statistics, background information/data, and/or the like). Further, userselection of a single user-selection may cause two or more fields of thegraphic object to be populated. For example, the two or more fields maybe populated with text, a pathname and/or file path identifying a fileand/or a location within the file storing a content item, and/or thelike. Various embodiments allow a user to generate one or more graphicsprior to the beginning of a media event and export the graphics to afile that is moderately-sized (e.g., flat file). For example, one ormore graphics may be exported to a single file that is in the kilobytesize range rather than the Megabyte size range. The moderately-sizedfile may then be emailed and/or otherwise transmitted to one or moreother users. The pre-generated graphic may then be rendered, published,and/or the like based on the moderately-sized file, in an exampleembodiment. In an example embodiment, when the pre-generated graphicsare rendered, published, and/or the like based on the moderately-sizedfile, it may be determined if the content items referenced by thepathnames and/or file paths in the moderately-sized file are the mostcurrent version of those content items. In an example embodiment, if oneor more of the content items have been updated since the generation ofthe moderately-sized file, the graphic may be automatically rendered,published, and/or the like with the current version of the content item.For example, the pre-generated graphic may be rendered, published,and/or the like with real time and/or near real time accuratestatistics, logos, and/or other content items.

According to an aspect of the present invention, a method for generatinga digital graphic is provided. In an example embodiment, the methodcomprises providing a graphics building interface to be displayed by andinteracted with via a user computing entity; generating a graphicsobject, the graphics object being a data structure comprising apredetermined set of fields and predetermined structure information;receiving an indication of user input selecting a first selectableoption from a plurality of selectable options, the user input receivedvia the graphics building interface; identifying at least one pathnamecorresponding to the first selectable option; and updating the graphicsobject based on the at least one pathname and the first selectableoption. The updating of the graphics object comprises updating two ormore fields of the predetermined set of fields. At least one of the twoor more fields is populated with the at least one pathname. The at leastone pathname indicates one of (a) a file, (b) a location within thefile, or (c) both where a content item corresponding to the firstselectable option is stored.

According to another aspect of the present invention, an apparatus forgenerating a digital graphic is provided. In an example embodiment, theapparatus comprises at least one processor, a network interfaceconfigured to communicate via at least one network, and a memory storingcomputer-executable code portions. The computer-executable code portionsare configured to, when executed by the at least one processor, causethe apparatus to at least cause a graphics building interface to bedisplayed by a user computing entity and configured for user interactionvia the user computing entity; generate a graphics object, the graphicsobject being a data structure comprising a predetermined set of fieldsand predetermined structure information; receive an indication of userinput selecting a first selectable option from a plurality of selectableoptions, the user input received via the graphics building interface;identify at least one pathname corresponding to the first selectableoption; and update the graphics object based on the at least onepathname and the first selectable option. The updating of the graphicsobject comprises updating two or more fields of the predetermined set offields. At least one of the two or more fields is populated with the atleast one pathname. The at least one pathname indicates one of (a) afile, (b) a location within the file, or (c) both where a content itemcorresponding to the first selectable option is stored.

According to yet another aspect of the present invention, a computerprogram product for generating a digital graphic is provided. In anexample embodiment, the computer program product comprises at least onenon-transitory computer-readable storage medium havingcomputer-executable program code instructions stored therein. Thecomputer-executable program code instructions comprising program codeinstructions configured to cause a graphics building interface to bedisplayed by a user computing entity and configured for user interactionvia the user computing entity; generate a graphics object, the graphicsobject being a data structure comprising a predetermined set of fieldsand predetermined structure information; receive an indication of userinput selecting a first selectable option from a plurality of selectableoptions, the user input received via the graphics building interface;identify at least one pathname corresponding to the first selectableoption; and update the graphics object based on the at least onepathname and the first selectable option. The updating of the graphicsobject comprises updating two or more fields of the predetermined set offields. At least one of the two or more fields is populated with the atleast one pathname. The at least one pathname indicates one of (a) afile, (b) a location within the file, or (c) both where a content itemcorresponding to the first selectable option is stored.

According to still another aspect of the present invention, a method forgenerating a graphic is provided. In an example embodiment, the methodcomprises providing a graphics building interface to be displayed by andinteracted with via a user computing entity; and receiving user inputselecting a template from a plurality of templates. The templatecomprises a predetermined set of fields and predetermined graphicsstructure information and the user input is received via the graphicsbuilding interface. The method further comprises receiving user inputselecting a graphic context. The graphic context comprises predeterminedstyle information and the user input received via the graphics buildinginterface. The method further comprises generating a graphics objectcomprising the predetermined set of fields, the predetermined graphicsstructure information, and the predetermined style information based onthe selected graphic context and the selected template; and updating thegraphics building interface to provide one or more content selectorsbased on the predetermined set of fields.

According to another aspect of the present invention, an apparatus forgenerating a digital graphic is provided. In an example embodiment, theapparatus comprises at least one processor, a network interfaceconfigured to communicate via at least one network, and a memory storingcomputer-executable code portions. The computer-executable code portionsare configured to, when executed by the at least one processor, causethe apparatus to at least cause a graphics building interface to bedisplayed by a user computing entity and configured for user interactionvia the user computing entity and receive an indication of user inputselecting a template from a plurality of templates. The templatecomprising a predetermined set of fields and predetermined graphicsstructure information and the user input received via the graphicsbuilding interface. The computer-executable code portions are furtherconfigured to, when executed by the at least one processor, configuredto cause the apparatus to at least receive an indication of user inputselecting a graphic context. The graphic context comprisingpredetermined style information and the user input received via thegraphics building interface. The computer-executable code portions arefurther configured to, when executed by the at least one processor,configured to cause the apparatus to at least generate a graphics objectcomprising the predetermined set of fields, the predetermined graphicsstructure information, and the predetermined style information based onthe selected graphic context and the selected template; and cause thegraphics building interface to be updated to provide one or more contentselectors based on the predetermined set of fields.

According to yet another aspect of the present invention, a computerprogram product for generating a digital graphic is provided. In anexample embodiment, the computer program product comprises at least onenon-transitory computer-readable storage medium havingcomputer-executable program code instructions stored therein. Thecomputer-executable program code instructions comprise program codeinstructions configured to cause a graphics building interface to bedisplayed by a user computing entity and configured for user interactionvia the user computing entity and receive an indication of user inputselecting a template from a plurality of templates. The templatecomprising a predetermined set of fields and predetermined graphicsstructure information and the user input received via the graphicsbuilding interface. The computer-executable program code instructionsfurther comprise program code instructions configured to receive anindication of user input selecting a graphic context. The graphiccontext comprising predetermined style information and the user inputreceived via the graphics building interface. The computer-executableprogram code instructions further comprise program code instructionsconfigured to generate a graphics object comprising the predeterminedset of fields, the predetermined graphics structure information, and thepredetermined style information based on the selected graphic contextand the selected template; and cause the graphics building interface tobe updated to provide one or more content selectors based on thepredetermined set of fields.

According to still another aspect of the present invention, a methodpreparing a graphic to be aired as part of a media production prior tothe beginning of the media production is provided. In an exampleembodiment, the method comprises generating, by a user apparatuscomprising a processor, a memory, and a user interface, a graphic objectencoding the graphic based on user input received via a graphicsbuilding interface provided via the user interface. The graphic objectcomprises at least one pathname indicating one of (a) a file, (b) alocation within the file, or (c) both where a content item of thegraphic is stored in a content database stored by the memory. The methodfurther comprises receiving, by the user apparatus, user input via thegraphics building interface requesting the encoding of the graphic in agraphic document; generating, by the user apparatus, a graphic documentcomprising the graphic object; and storing, by the user apparatus, thegraphic document in the memory. The graphic encoded in the graphicdocument is configured to be provided during the airing of a mediaproduction. The graphic document is generated prior to the beginning ofthe media production.

According to another aspect of the present invention, an apparatus forpreparing a graphic to be aired as part of a media production prior tothe beginning of the media production is provided. In an exampleembodiment, the apparatus comprises at least one processor, a networkinterface configured to communicate via at least one network, and amemory storing computer-executable code portions. Thecomputer-executable code portions are configured to, when executed bythe at least one processor, cause the apparatus to at least generate agraphic object encoding the graphic based on user input received via agraphics building interface provided via the user interface. The graphicobject comprises at least one pathname indicating one of (a) a file, (b)a location within the file, or (c) both where a content item of thegraphic is stored in a content database stored by the memory. Thecomputer-executable code portions are further configured to, whenexecuted by the at least one processor, cause the apparatus to at leastreceive user input via the graphics building interface requesting theencoding of the graphic in a graphic document; generate a graphicdocument comprising the graphic object; and store the graphic documentin the memory. The graphic encoded in the graphic document is configuredto be provided during the airing of a media production and the graphicdocument is generated prior to the beginning of the media production.

According to yet another aspect of the present invention, a computerprogram product for preparing a graphic to be aired as part of a mediaproduction prior to the beginning of the media production is provided.In an example embodiment, the computer program product comprises atleast one non-transitory computer-readable storage medium havingcomputer-executable program code instructions stored therein. Thecomputer-executable program code instructions comprise program codeinstructions configured to generate a graphic object encoding thegraphic based on user input received via a graphics building interfaceprovided via the user interface. The graphic object comprises at leastone pathname indicating one of (a) a file, (b) a location within thefile, or (c) both where a content item of the graphic is stored in acontent database stored by the memory. The computer-executable programcode instructions further comprise program code instructions configuredto receive user input via the graphics building interface requesting theencoding of the graphic in a graphic document; generate a graphicdocument comprising the graphic object; and store the graphic documentin the memory. The graphic encoded in the graphic document is configuredto be provided during the airing of a media production and the graphicdocument is generated prior to the beginning of the media production.

According to still another aspect of the present invention, a method forrendering a graphic based on pre-generated graphic is provided. In anexample embodiment, the method comprises reading a graphic object from agraphic document comprising the graphic object. The graphic object (a)encodes the pre-generated graphic and (b) comprises (i) structureinformation and (ii) one or more fields corresponding to one or morecontent items of the pre-generated graphic. The method further comprisesaccessing the one or more content items from a local content database,the one or more content items referenced in the graphic object by apathname; rendering a graphic comprising the content items correspondingto the one or more fields by arranging the one or more content items inaccordance with the structure information; and causing display of thegraphic via a user interface.

According to another aspect of the present invention, an apparatus forrendering a graphic based on a pre-generated graphic is provided. In anexample embodiment, the apparatus comprises at least one processor, anetwork interface configured to communicate via at least one network,and a memory storing computer-executable code portions. Thecomputer-executable code portions are configured to, when executed bythe at least one processor, cause the apparatus to at least read agraphic object from a graphic document comprising the graphic object.The graphic object (a) encoding the pre-generated graphic and (b)comprising (i) structure information and (ii) one or more fieldscorresponding to one or more content items of the pre-generated graphic.The computer-executable code portions are further configured to, whenexecuted by the at least one processor, cause the apparatus to at leastaccess the one or more content items from a local content database, theone or more content items referenced in the graphic object by apathname; render a graphic comprising the content items corresponding tothe one or more fields by arranging the one or more content items inaccordance with the structure information; and cause display of thegraphic via a user interface.

According to yet another aspect of the present invention, a computerprogram product for rendering a graphic based on a pre-generated graphicis provided. In an example embodiment, the computer program productcomprising at least one non-transitory computer-readable storage mediumhaving computer-executable program code instructions stored therein. Thecomputer-executable program code instructions comprise program codeinstructions configured to read a graphic object from a graphic documentcomprising the graphic object. The graphic object (a) encoding thepre-generated graphic and (b) comprising (i) structure information and(ii) one or more fields corresponding to one or more content items ofthe pre-generated graphic. The computer-executable program codeinstructions further comprise program code instructions configured toaccess the one or more content items from a local content database, theone or more content items referenced in the graphic object by apathname; render a graphic comprising the content items corresponding tothe one or more fields by arranging the one or more content items inaccordance with the structure information; and cause display of thegraphic via a user interface.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING(S)

Having thus described the invention in general terms, reference will nowbe made to the accompanying drawings, which are not necessarily drawn toscale, and wherein:

FIG. 1 illustrates one embodiment of a system for producing, generating,and/or rendering graphics for broadcasting as part of a mediaproduction, in accordance with one embodiment the present invention;

FIG. 2 is a schematic diagram of a provider system, in accordance withone embodiment of the present invention;

FIG. 3 is a schematic diagram of a graphics computing entity, inaccordance with one embodiment of the present invention;

FIG. 4 is a schematic diagram of a user computing entity, in accordancewith one embodiment of the present invention;

FIG. 5 is a flowchart illustrating processes and operations performed bya user to produce, generate, and/or render a graphic for broadcasting aspart of a media production, in accordance with one embodiment of thepresent invention;

FIGS. 6-12 illustrate various views of an interactive GBI for userinteraction for producing, generating, and/or rendering graphics forbroadcasting as part of a media production, in accordance with oneembodiment of the present invention;

FIGS. 13A, 13B, and 13C together comprise a flowchart illustratingprocesses and operations related to producing, generating, and/orrendering a graphic for broadcasting as part of a media production, inaccordance with one embodiment of the present invention;

FIGS. 14, 15, and 16 each provide a flowchart illustrating processes andoperations related to exporting a graphic, in accordance with oneembodiment of the present invention;

FIG. 17 provides a flowchart illustrating processes and operationsrelated to rebuilding a graphic exported as a graphic document, inaccordance with one embodiment of the present invention; and

FIG. 18 provides a flowchart illustrating processes and operationsrelated to updating a content database, in accordance with oneembodiment of the present invention.

DETAILED DESCRIPTION OF VARIOUS EMBODIMENTS

Various embodiments of the present invention now will be described morefully hereinafter with reference to the accompanying drawings, in whichsome, but not all embodiments of the inventions are shown. Indeed, theseinventions may be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein; rather, theseembodiments are provided so that this disclosure will satisfy applicablelegal requirements. The term “or” (also indicated as “/”) is used hereinin both the alternative and conjunctive sense, unless otherwiseindicated. The terms “illustrative” and “exemplary” are used to beexamples with no indication of quality level. As used herein, the term“approximately” refers to within manufacturing and/or engineeringtolerances for the corresponding materials and/or elements. And termsare used both in the singular and plural forms interchangeably. Likenumbers refer to like elements throughout.

I. Methods, Apparatus, Systems, and Computer Program Products

Embodiments of the present invention may be implemented in various ways,including as computer program products that comprise articles ofmanufacture. Such computer program products may include one or moresoftware components including, for example, software objects, methods,data structures, and/or the like. A software component may be coded inany of a variety of programming languages. An illustrative programminglanguage may be a lower-level programming language such as an assemblylanguage associated with a particular hardware architecture and/oroperating system platform. A software component comprising assemblylanguage instructions may require conversion into executable machinecode by an assembler prior to execution by the hardware architectureand/or platform. Another example programming language may be ahigher-level programming language that may be portable across multiplearchitectures. A software component comprising higher-level programminglanguage instructions may require conversion to an intermediaterepresentation by an interpreter or a compiler prior to execution.

Other examples of programming languages include, but are not limited to,a macro language, a shell or command language, a job control language, ascript language, a database query or search language, and/or a reportwriting language. In one or more example embodiments, a softwarecomponent comprising instructions in one of the foregoing examples ofprogramming languages may be executed directly by an operating system orother software component without having to be first transformed intoanother form. A software component may be stored as a file or other datastorage construct. Software components of a similar type or functionallyrelated may be stored together such as, for example, in a particulardirectory, folder, or library. Software components may be static (e.g.,pre-established or fixed) or dynamic (e.g., created or modified at thetime of execution).

A computer program product may include a non-transitorycomputer-readable storage medium storing applications, programs, programmodules, scripts, source code, program code, object code, byte code,compiled code, interpreted code, machine code, executable instructions,and/or the like (also referred to herein as executable instructions,instructions for execution, computer program products, program code,and/or similar terms used herein interchangeably). Such non-transitorycomputer-readable storage media include all computer-readable media(including volatile and non-volatile media).

In one embodiment, a non-volatile computer-readable storage medium mayinclude a floppy disk, flexible disk, hard disk, solid-state storage(SSS) (e.g., a solid state drive (SSD), solid state card (SSC), solidstate module (SSM), enterprise flash drive, magnetic tape, or any othernon-transitory magnetic medium, and/or the like. A non-volatilecomputer-readable storage medium may also include a punch card, papertape, optical mark sheet (or any other physical medium with patterns ofholes or other optically recognizable indicia), compact disc read onlymemory (CD-ROM), compact disc-rewritable (CD-RW), digital versatile disc(DVD), Blu-ray disc (BD), any other non-transitory optical medium,and/or the like. Such a non-volatile computer-readable storage mediummay also include read-only memory (ROM), programmable read-only memory(PROM), erasable programmable read-only memory (EPROM), electricallyerasable programmable read-only memory (EEPROM), flash memory (e.g.,Serial, NAND, NOR, and/or the like), multimedia memory cards (MMC),secure digital (SD) memory cards, SmartMedia cards, CompactFlash (CF)cards, Memory Sticks, and/or the like. Further, a non-volatilecomputer-readable storage medium may also include conductive-bridgingrandom access memory (CBRAM), phase-change random access memory (PRAM),ferroelectric random-access memory (FeRAM), non-volatile random-accessmemory (NVRAM), magnetoresistive random-access memory (MRAM), resistiverandom-access memory (RRAM), Silicon-Oxide-Nitride-Oxide-Silicon memory(SONOS), floating junction gate random access memory (FJG RAM),Millipede memory, racetrack memory, and/or the like.

In one embodiment, a volatile computer-readable storage medium mayinclude random access memory (RAM), dynamic random access memory (DRAM),static random access memory (SRAM), fast page mode dynamic random accessmemory (FPM DRAM), extended data-out dynamic random access memory (EDODRAM), synchronous dynamic random access memory (SDRAM), double datarate synchronous dynamic random access memory (DDR SDRAM), double datarate type two synchronous dynamic random access memory (DDR2 SDRAM),double data rate type three synchronous dynamic random access memory(DDR3 SDRAM), Rambus dynamic random access memory (RDRAM), TwinTransistor RAM (TTRAIVI), Thyristor RAM (T-RAM), Zero-capacitor (Z-RAM),Rambus in-line memory module (RIMM), dual in-line memory module (DIMM),single in-line memory module (SIMM), video random access memory (VRAM),cache memory (including various levels), flash memory, register memory,and/or the like. It will be appreciated that where embodiments aredescribed to use a computer-readable storage medium, other types ofcomputer-readable storage media may be substituted for or used inaddition to the computer-readable storage media described above.

As should be appreciated, various embodiments of the present inventionmay also be implemented as methods, apparatus, systems, computingdevices, computing entities, and/or the like. As such, embodiments ofthe present invention may take the form of an apparatus, system,computing device, computing entity, and/or the like executinginstructions stored on a computer-readable storage medium to performcertain steps or operations. Thus, embodiments of the present inventionmay also take the form of an entirely hardware embodiment, an entirelycomputer program product embodiment, and/or an embodiment that comprisescombination of computer program products and hardware performing certainsteps or operations.

Embodiments of the present invention are described below with referenceto block diagrams and flowchart illustrations. Thus, it should beunderstood that each block of the block diagrams and flowchartillustrations may be implemented in the form of a computer programproduct, an entirely hardware embodiment, a combination of hardware andcomputer program products, and/or apparatus, systems, computing devices,computing entities, and/or the like carrying out instructions,operations, steps, and similar words used interchangeably (e.g., theexecutable instructions, instructions for execution, program code,and/or the like) on a computer-readable storage medium for execution.For example, retrieval, loading, and execution of code may be performedsequentially such that one instruction is retrieved, loaded, andexecuted at a time. In some exemplary embodiments, retrieval, loading,and/or execution may be performed in parallel such that multipleinstructions are retrieved, loaded, and/or executed together. Thus, suchembodiments can produce specifically-configured machines performing thesteps or operations specified in the block diagrams and flowchartillustrations. Accordingly, the block diagrams and flowchartillustrations support various combinations of embodiments for performingthe specified instructions, operations, or steps.

II. General Overview

Embodiments of the present invention provide methods, apparatus,systems, computer program products, computing devices, computingentities, and/or the like for providing a platform for rendering,publishing and/or the like graphics (e.g., still graphics and/oranimated graphics) to air (e.g., a media event, live media event, mediaproduction, live media production, and/or the like). For example, theplatform for publishing graphics may be used to provide graphicsillustrating, providing, and/or the like player statistics, backgroundinformation/data, current game statistics, and/or the like during a liveairing of a basketball game. In an example embodiment, the platformcomprises a graphics producing module, application, and/or the likeconfigured to provide a user of a user computing entity with a GBI. Inan example embodiment, the user computing entity is remotely locatedwith respect to the graphics computing entity executing the graphicsproducing module, application, and/or the like and/or the platform forpublishing graphics. In an example embodiment, the GBI is an interactivegraphical user interface that may be used to generate graphics liveand/or in advance of filming, producing, editing, and/or the like of amedia event and/or production (including live media events and/orproductions).

In an example embodiment, the platform comprises a graphics renderingmodule, application, program, engine, and/or the like that interfaces(e.g., via an application programing interface (API)) with the graphicsproducing module, application, and/or the like. For example, thegraphics computing entity may be configured to render still and/oranimated graphics for display via various computing entities. In anexample embodiment, the GBI provides a user with a plurality of userselectable templates and/or scenes, a plurality of user selectablegraphics contexts and/or production skins, and a plurality of userselectable content items and/or objects. In an example embodiment, thetemplates and/or scenes, graphic contexts and/or production skins, andcontent items and/or objects may be stored in one or more databases(e.g., content database 260, template database 250, and/or the like). Inan example embodiment, the content items and/or objects may comprisegraphic content items and non-graphic content items. For example, thegraphic content items may comprise images, photographs, drawings,renderings, logos, raw color values (e.g., in RGB values, cmyk values,and/or the like), captures of social media posts (e.g., digital image ofa tweet, and/or the like), and/or other graphical elements. In anexample embodiment, the non-graphic content items may comprisestatistics, data (e.g., a height, position, college information/data,years in the league, teams played with, records and/or titles held,awards and/or the like for a professional basketball player, forexample), and/or the like. In an example embodiment, a template and/orscene may define the structure information/data and/or the layout of agraphic, the fields available for population for generation of thegraphic, and/or the like. In an example embodiment, the structureinformation/data may provide a dynamic layout of the graphic wherein thelayout of content items within the graphic are dependent on the numberof content indices, categories, statistics, and/or otherinformation/data that the user selects. In an example embodiment, thegraphic context and/or production skin may define one or more styleattributes of a graphic, such as a text font, a logo, background colors,a sponsor, animation effects, and/or the like. In an example embodiment,a template/scene, a graphic context/production skin, and one or morecontent objects (e.g., via selection of content indices, categories,statistics and/or background information/data, and/or the like) may beselected (e.g., via the GBI) to generate a graphic. In an exampleembodiment, a user may enter text via the GBI to populate on or moreavailable text fields of a graphic (e.g., graphic title, sub-title,footer, and/or the like).

In an example embodiment, a user operating a user computing entity maygenerate a graphic using the GBI provided via the graphical productionmodule, application, and/or the like. The graphical production module,application, and/or the like may then generate a graphic document thatencodes the graphic (e.g., a document that encodes the graphic but ismoderately-sized). For example, the graphic document may be a plain textfile, word file, and/or the like such that one or more graphics may beencoded into a moderately-sized (e.g., kilobyte scale) file. The graphicdocument may then be emailed to another user (e.g., a graphics operator)and, when opened within the graphical production module, application,and/or the like (e.g., through the GBI), may cause the automaticrendering, publishing, and/or the like of the graphic. In an exampleembodiment, if one or more of the template/scene, production skin,and/or content object(s) have been changed and/or updated since thegraphic was generated, the graphic may be rendered, published, and/orthe like using the changed and/or updated template/scene, graphiccontext/production skin, and/or content object(s), in an exampleembodiment. For example, a graphic may be generated before the beginningof a live media production. The pre-generated graphic may then berendered, published, and/or the like live to air with real time and/ornear real time accurate content objects (e.g., statistics, and/or thelike) during the live media production. As will be recognized, varioussystem architectures that may be used in accordance with the presentinvention will now be described herein.

III. Exemplary System Architecture

FIG. 1 illustrates one embodiment of a system that may implement thepresent invention. In this particular embodiment, the illustrated systemmay include one or more content distribution/delivery networks (CDNs)10, one or more user computing entities 30, one or more providernetworks/systems 200, one or more graphics computing entities 275, andone or more consumer devices 20. The one or more CDNs 10, the one ormore user computing entities 30, one or more consumer devices 20, theone or more provider networks/systems 200, and the one or more graphicscomputing entities 275 may communicate with each other and/or a varietyof other computing entities via one or more wired or wireless networks.In an example embodiment, the one or more graphics computing entities275 may communicate with one or more user computing entities 30 throughthe provider networks/systems 200. Although described separately, itwill be recognized that two or more of the above entities can becombined or included in a single platform.

Content Distribution/Delivery Networks 10

In various embodiments, the one or more CDNs 10 may comprise networksconfigured for distributing media content. Generally, the term “content”may refer to any type of media—audio, videos, datacasts, music, text,images, graphics, articles, photos, photo galleries, video galleries,infographics, maps, polls, guest biographies, tweets or other socialmedia, blog posts, and/or the like. For example, content may includetelevision broadcasts (e.g., live local newscasts), television programs(e.g., The Office), sporting events, movies (e.g., video-on-demand(VOD)), datacasts, music, images, videos, text, webpages, and/or thelike. Thus, the CDN 10 may be configured for providing a user with mediacontent via a broadcast, such as via an over-the-air contentdelivery/distribution network, a linear content delivery/distributionnetwork, a cable content delivery/distribution network, a satellitecontent delivery/distribution network, an Internet Protocol (IP) basedcontent delivery/distribution network, and/or the like.

Over-the-Air Content Delivery/Distribution Network

An over-the-air (OTA) CDN 10 can be used in conjunction with embodimentsof the present invention. The OTA CDN 10 may be owned and/or operated bya broadcaster (e.g., KCRG, KFXA, KFXB, KGAN, KIIN, KPXR, KRIN, KWKB,KWWF, and/or KWWL) and associated with a broadcast area (e.g., CedarRapids-Waterloo-Iowa City-Dubuque broadcast area). Broadcast areas maybe designated market areas (DMAs), zip codes, block groups, censustracts, cartographic levels, government-established areas/zones,geographic areas, and/or the like. As will be recognized, a broadcastermay have one or more OTA CDNs 10 depending on the geographic area (e.g.,DMA, zip code, block group, census tract, cartographic level,government-established area/zone, geographic area, and/or the like) thebroadcast area includes.

An OTA CDN 10 may include various components to transmit/broadcastcontent and/or data/information via an OTA broadcast (e.g., an OTAbroadcast signal) to be received by one or more distribution devices105. In one embodiment, the OTA CDN 10 may include one or more channelcoding elements, one or more modulation elements, and one or moretransmitters. Although not shown, the OTA CDN 10 may also includevarious other components, such as audio subsystems, video subsystems,multiplexers, exciters, drivers, amplifiers, network interfaces,processing elements, and/or the like. Via these elements, for instance,the OTA CDN 10 can transmit/broadcast OTA broadcasts (comprising contentand/or data) within a broadcast area. The OTA CDN 10 maytransmit/broadcast the broadcast (e.g., OTA broadcast) using a varietyof standards and protocols, such as Advanced Television SystemsCommittee (ATSC), Terrestrial Integrated Services Digital Broadcasting(ISDB-T), Terrestrial Digital Multimedia Broadcasting (T-DMB), DigitalVideo Broadcasting—Terrestrial (DVB-T), Digital VideoBroadcasting—Handheld (DVB-H), Digital Terrestrial Multimedia Broadcast(DTMB), Satellite Terrestrial Interactive Multi-service Infrastructure(STiMi), National Television System Committee (NTSC) standards andprotocols, and/or the like.

It will be appreciated that one or more of a CDN's 10 components andother broadcaster components may be located remotely from one another.Furthermore, one or more of the components may be combined andadditional components performing functions described herein may beincluded.

Cable Content Delivery/Distribution Network

Although not shown, a cable CDN 10 (also referred to as a CDN 10) may beused with embodiments of the present invention. A cable CDN 10 mayinclude various components to transmit/broadcast content and/ordata/information via the cable provider's CDN 10 to the cable provider'ssubscribers. For example, in various embodiments, the cable CDN 10 mayinclude a network operations center, a cable modem termination system,and a headend to transmit cable broadcasts (e.g., digital cable signals)through the cable provider's CDN 10 to user computing entities 30. Thus,user computing entities 30 may communicate with a headend over adistribution network.

To perform such functions, the cable CDN 10 may include variouscomponents, such as audio subsystems, video subsystems, multiplexers,switches, encoders, satellite receivers and antennae, networkinterfaces, decoding elements, encoding elements, processing elements,transmitting elements, modulation elements, and/or the like. The cableCDN 10 may be capable of receiving content and/or data/informationand/or transmitting content and/or data/information (e.g., transmitbroadcast signals in a one-to-many or broadcast configuration) using avariety of standards and protocols to user computing entities 30,including those described with regard to the OTA CDN 10 and/or furtherincluding various versions of data/information over cable serviceinterface specification (DOCSIS).

Satellite Content Delivery/Distribution Network

Although not shown, a satellite CDN 10 (also referred to as a CDN 10)may be used with embodiments of the present invention. A satellite CDN10 may include various components to transmit/broadcast content and/ordata/information (e.g., transmit broadcast signals in a one-to-many orbroadcast configuration) via the satellite provider's CDN 10 to usercomputing entities 30 (e.g., subscribers). For example, in variousembodiments, the satellite CDN 10 may include uplink facilities (withtransmitting antennae), satellites (with transponders), receivingsatellite dishes, and/or user computing entities 30. Thus, the satelliteCDN 10 can transmit/broadcast satellite broadcasts (comprising contentand/or data) to user computing entities 30 using a variety of standardsand protocols, such as those described with regard to the OTA CDN 10and/or further including direct broadcast satellite (DBS), televisionreceive only (TVRO), and/or the like.

IP-Based Delivery/Distribution Network

Although not shown, an IP-based CDN 10 (also referred to as a CDN 10)may be used with embodiments of the present invention. An IP-based CDN10 may include various components to transmit/broadcast content and/ordata/information (e.g., transmit broadcast signals in a one-to-many orbroadcast configuration) via the provider's CDN 10 to user computingentities 30 (e.g., subscribers). Thus, the IP-based CDN 10 cantransmit/broadcast broadcasts (comprising content and/or data) to usercomputing entities 30 using a variety of standards and protocols, suchas those described previously.

Provider System 200

Herein the term “provider” is used to indicate any entity, individual,organization, company, group or the like that provides or assists inproviding one or more consumers with at least one media production. Amedia production is a media presentation that is produced and providedvia the CDN 10. For example, a media production may be a pre-produced orlive, with respect to the broadcast of the media production via the CDN10. Some example media productions include an episode of a talk show, anepisode of a news show, a sporting event (e.g., a basketball game,coverage of a golf tournament, coverage of the Olympics, and/or thelike), an episode of a sit-com, an episode of a mini-series, a short orfull length movie, one or more episode special media presentation,and/or the like. The term “production staff” is used to indicate anyindividual involved with the production of at least one mediaproduction. For example, the production staff may comprise one or moreproducers, one or more editors, one or more graphics operators, and/orthe like. The term “user” is used herein to indicate a production staffmember that operates a user computing entity 30 to generate, produce,and/or render one or more graphics. The term “consumer” is used hereinto indicate any individual, family, entity, organization, company,group, or the like that consumes (e.g., accesses, receives, views,and/or experiences) at least one media production provided by theprovider (e.g., via a CDN 10 and/or a consumer device 20). In someembodiments, the consumer may access, receive, view, and/or experienceat least one media production from the provider via a paid or unpaidsubscription service for example.

In various embodiments, a provider system 200 may be configured toprovide a user (e.g., operating a user computing entity 30) with aninteractive user interface (e.g., a GBI) configured for generating,producing, and/or rendering one or more graphics. In variousembodiments, the provider system 200 may be configured to enable,facilitate, and/or act as an intermediary between one or more usercomputing entities 30 and one or more graphics computing entities 275.The provider system 200 may be further configured to provide at leastone media production to at least one consumer (e.g., via a consumerdevice 20 via a CDN 10). The media production may be in the form of alive stream of the enhanced media production or an on demand stream ofthe media production (e.g., Video on Demand (VOD) or the like).

In various embodiments, the provider system 200 is a system operated by,on behalf of, or in association with a media production provider toprovide at least one media production to one or more consumers. Ingeneral, the terms computing entity, computer, entity, device, system,and/or similar words used herein interchangeably may refer to, forexample, one or more computers, computing entities, desktops, mobilephones, tablets, phablets, notebooks, laptops, distributed systems,servers or server networks, blades, gateways, switches, processingdevices, processing entities, relays, routers, network access points,base stations, the like, and/or any combination of devices or entitiesadapted to perform the functions, operations, and/or processes describedherein. Such functions, operations, and/or processes may include, forexample, transmitting, receiving, operating on, processing, displaying,storing, determining, creating/generating, monitoring, evaluating,comparing, and/or similar terms used herein interchangeably. In oneembodiment, these functions, operations, and/or processes can beperformed on information/data, content, information, and/or similarterms used herein interchangeably.

As indicated, in one embodiment, the provider system 200 may alsoinclude one or more communications interfaces 296 for communicating withvarious computing entities, such as by communicating information/data,content, information, and/or similar terms used herein interchangeablythat can be transmitted, received, operated on, processed, displayed,stored, and/or the like. For instance, the provider system 200 maycommunicate with user computing entities 30, graphics computing entities275, consumer devices 20, and/or the like (e.g., via the CDN 10 and/orone or more wired or wireless networks 50).

As shown in FIG. 2, in one embodiment, the provider system 200 mayinclude or be in communication with one or more processing elements 292(also referred to as processors, processing circuitry, processingdevice, and/or similar terms used herein interchangeably) thatcommunicate with other elements within the provider system 200 via abus, for example. As will be understood, the processing element 292 maybe embodied in a number of different ways. For example, the processingelement 292 may be embodied as one or more complex programmable logicdevices (CPLDs), microprocessors, multi-core processors, coprocessingentities, application-specific instruction-set processors (ASIPs),microcontrollers, and/or controllers. Further, the processing element292 may be embodied as one or more other processing devices orcircuitry. The term circuitry may refer to an entirely hardwareembodiment or a combination of hardware and computer program products.Thus, the processing element 292 may be embodied as integrated circuits,application specific integrated circuits (ASICs), field programmablegate arrays (FPGAs), programmable logic arrays (PLAs), hardwareaccelerators, other circuitry, and/or the like. As will therefore beunderstood, the processing element 292 may be configured for aparticular use or configured to execute instructions stored in volatileor non-volatile media or otherwise accessible to the processing element292. As such, whether configured by hardware or computer programproducts, or by a combination thereof, the processing element 292 may becapable of performing steps or operations according to embodiments ofthe present invention when configured accordingly.

In one embodiment, the provider system 200 may further include or be incommunication with non-volatile media (also referred to as non-volatilestorage, memory, memory storage, memory circuitry and/or similar termsused herein interchangeably). In one embodiment, the non-volatilestorage or memory may include one or more non-volatile storage or memorymedia 294, including but not limited to hard disks, ROM, PROM, EPROM,EEPROM, flash memory, MMCs, SD memory cards, Memory Sticks, CBRAM, PRAM,FeRAM, NVRAM, MRAM, RRAM, SONOS, FJG RAM, Millipede memory, racetrackmemory, and/or the like. As will be recognized, the non-volatile storageor memory media may store databases, database instances, databasemanagement systems, information/data, applications, programs, programmodules, scripts, source code, object code, byte code, compiled code,interpreted code, machine code, executable instructions, and/or thelike. The terms database, database instance, database management system,and/or similar terms used herein interchangeably may refer to astructured collection of records or data that is stored in acomputer-readable storage medium, such as via a relational database,hierarchical database, and/or network database.

In one embodiment, the provider system 200 may further include or be incommunication with volatile media (also referred to as volatile storage,memory, memory storage, memory circuitry and/or similar terms usedherein interchangeably). In one embodiment, the volatile storage ormemory may also include one or more volatile storage or memory media 18,including but not limited to RAM, DRAM, SRAM, FPM DRAM, EDO DRAM, SDRAM,DDR SDRAM, DDR2 SDRAM, DDR3 SDRAM, RDRAM, TTRAM, T-RAM, Z-RAM, RIMM,DIMM, SIMM, VRAM, cache memory, register memory, and/or the like. Aswill be recognized, the volatile storage or memory media may be used tostore at least portions of the databases, database instances, databasemanagement systems, information/data, applications, programs, programmodules, scripts, source code, object code, byte code, compiled code,interpreted code, machine code, executable instructions, and/or the likebeing executed by, for example, the processing element 292. Thus, thedatabases, database instances, database management systems,information/data, applications, programs, program modules, scripts,source code, object code, byte code, compiled code, interpreted code,machine code, executable instructions, and/or the like may be used tocontrol certain aspects of the operation of the provider system 200 withthe assistance of the processing element 292 and operating system.

As indicated, in one embodiment, the provider system 200 may alsoinclude one or more communications interfaces 296 for communicating withvarious computing entities, such as by communicating information/data,content, information, and/or similar terms used herein interchangeablythat can be transmitted, received, operated on, processed, displayed,stored, and/or the like. Such communication may be executed using awired data transmission protocol, such as fiber distributed datainterface (FDDI), digital subscriber line (DSL), Ethernet, asynchronoustransfer mode (ATM), frame relay, data over cable service interfacespecification (DOCSIS), or any other wired transmission protocol.Similarly, the provider system 200 may be configured to communicate viawireless external communication networks using any of a variety ofprotocols, such as general packet radio service (GPRS), Universal MobileTelecommunications System (UMTS), Code Division Multiple Access 2000(CDMA2000), CDMA2000 1× (1×RTT), Wideband Code Division Multiple Access(WCDMA), Time Division-Synchronous Code Division Multiple Access(TD-SCDMA), Long Term Evolution (LTE), Evolved Universal TerrestrialRadio Access Network (E-UTRAN), Evolution-Data Optimized (EVDO), HighSpeed Packet Access (HSPA), High-Speed Downlink Packet Access (HSDPA),IEEE 802.11 (Wi-Fi), Wi-Fi Direct, 802.16 (WiMAX), ultra wideband (UWB),infrared (IR) protocols, near field communication (NFC) protocols,Bluetooth protocols, Wibree, Home Radio Frequency (HomeRF), SimpleWireless Abstract Protocol (SWAP), wireless universal serial bus (USB)protocols, and/or any other wireless protocol.

Although not shown, the provider system 200 may include or be incommunication with one or more input elements, such as a keyboard input,a mouse input, a touch screen/display input, motion input, movementinput, audio input, pointing device input, joystick input, keypad input,and/or the like. The provider system 200 may also include or be incommunication with one or more output elements (not shown), such asaudio output, video output, screen/display output, motion output,movement output, and/or the like.

As will be appreciated, one or more of the provider system's 200components may be located remotely from other provider system 200components, such as in a distributed system. Furthermore, one or more ofthe components may be combined and additional components performingfunctions described herein may be included in the provider system 200.Thus, the provider system 200 can be adapted to accommodate a variety ofneeds and circumstances. As will be recognized, these architectures anddescriptions are provided for exemplary purposes only and are notlimiting to the various embodiments.

Graphics Computing Entity 275

In an example embodiment, a graphics computing entity 275 is a computingentity configured and/or programmed to generate, produce, and/or renderone or more graphics. The one or more graphics may comprise still and/oranimated graphics. In an example embodiment, a graphics computing entity275 may configured and/or programmed to provide one or more graphics toa provider system 200 for inclusion in a media production. For example,graphics computing entity 275 may be configured to play one or moregraphics live to air. As used herein, the term “play a graphic live toair” means causing the graphic to be broadcast as part of a mediaproduction. For example, a graphics computing entity 275 may cause ascore board or other player/team statistic graphic to be played live toair during a live broadcast of a sporting event. In an exampleembodiment, a graphics computing entity 275 may be configured togenerate, produce, and/or render one or more graphics but may not beconfigured and/or programmed to play the graphics live to air. Forexample, in an example embodiment, a provider system 200 may be incommunication with one or more live play-capable graphics computingentities 275A that may be used to produce, generate, and/or render oneor more graphics during a production and/or broadcasting of a live mediaproduction and one or more preparation graphics computing entities 275Bthat may be used to produce, generate, and/or render one or moregraphics for viewing, editing, and/or exporting via a user computingentity 30 or a display device/input device of the preparation graphicscomputing entity 275B, but that are not configured and/or programmed toplay the graphics live to air. For example, a live play-capable graphicscomputing entity 275A may be configured to provide graphics to theprovider system 200 and/or CDN 10 such that the graphic is provided(e.g., via a CDN 10 and/or network 50) such that a consumer viewing themedia production via a consumer device 20 may view the graphic as partof the media production. For example, a live play-capable graphicscomputing entity 275A may provide a graphic (e.g., to a provider system200, a CDN 10, and/or a network 50) such that the graphic is displayedvia a consumer device 20 as part of the media production.

As noted above, in general, the terms computing entity, network, networkentity, entity, device, system, and/or similar words used hereininterchangeably may refer to, for example, one or more computers,computing entities, desktops, mobile phones, tablets, phablets,notebooks, laptops, distributed systems, watches, glasses, key fobs,radio frequency identification (RFID) tags, ear pieces, scanners,televisions, dongles, cameras, wristbands, wearable items, kiosks, inputterminals, servers or server networks, blades, gateways, switches,processing devices, processing entities, set-top boxes, relays, routers,network access points, base stations, the like, and/or any combinationof devices or entities adapted to perform the functions, operations,and/or processes described herein. Such functions, operations, and/orprocesses may include, for example, transmitting, receiving, operatingon, processing, displaying, storing, determining, creating/generating,monitoring, evaluating, comparing, and/or similar terms used hereininterchangeably. In one embodiment, these functions, operations, and/orprocesses can be performed on data/information, content, information,and/or similar terms used herein interchangeably.

FIG. 3 provides a schematic diagram of an example graphics computingentity 275. The graphics computing entity 275 comprises a processor 210,such as one or more processing elements, which may include CPLDs,microprocessors, multi-core processors, coprocessing entities, ASIPs,and/or controllers or other processing devices or circuitry. The termcircuitry may refer to an entirely hardware embodiment or a combinationof hardware and computer program products. Thus, the processor 210 maybe embodied as integrated circuits, ASICs, FPGAs, PLAs, hardwareaccelerators, other circuitry, and/or the like. As will therefore beunderstood, the processor 210 may be configured for a particular use orconfigured to execute instructions stored in volatile or non-volatilemedia or otherwise accessible to the processor 210. As such, whetherconfigured by hardware or computer program products, or by a combinationthereof, the processor 210 may be capable of performing steps oroperations according to embodiments of the present invention, such asthe embodiments illustrated in FIGS. 13A, 13B, 13C, and 14-18, whenconfigured accordingly. The processor 210 is used to execute softwareinstructions for carrying out the defined steps of the method of thevarious embodiments of the present invention. The processor 210communicates using a data/information bus 201 that is used to conveydata/information and program instructions, typically, between theprocessor and memory 216.

The graphics computing entity 275 further includes memory 216, which maycomprise non-volatile media (also referred to as non-volatile storage,memory, memory storage, memory circuitry and/or similar terms usedherein interchangeably). In one embodiment, the non-volatile storage ormemory may include one or more non-volatile storage or memory media asdescribed above, such as hard disks, ROM, PROM, EPROM, EEPROM, flashmemory, MMCs, SD memory cards, Memory Sticks, CBRAM, PRAM, FeRAM, NVRAM,MRAM, RRAM, SONOS, FJG RAM, Millipede memory, racetrack memory, and/orthe like. As will be recognized, the non-volatile storage or memorymedia may store databases, database instances, database managementsystems, data/information, applications, programs, program modules,scripts, source code, object code, byte code, compiled code, interpretedcode, machine code, executable instructions, and/or the like. Such codemay include the graphics production module 230, graphics renderingmodule 240, and/or the like. The terms database, database instance,database management system, and/or similar terms used hereininterchangeably may refer to a structured collection of records ordata/information that is stored in a computer-readable storage medium,such as via a relational database, hierarchical database, and/or networkdatabase. In an example embodiment, the memory 216 may store databasescomprising a template database 250, one or more content databases 260,and/or the like.

In at least one embodiment, the graphics computing entity 275 mayfurther include or be in communication with volatile media (alsoreferred to as volatile storage, memory, memory storage, memorycircuitry and/or similar terms used herein interchangeably). In oneembodiment, the volatile storage or memory may also include one or morevolatile storage or memory media as described above, such as RAM, DRAM,SRAM, FPM DRAM, EDO DRAM, SDRAM, DDR SDRAM, DDR2 SDRAM, DDR3 SDRAM,RDRAM, RIMM, DIMM, SIMM, VRAM, cache memory, register memory, and/or thelike. As will be recognized, the volatile storage or memory media may beused to store at least portions of the databases, database instances,database management systems, data/information, applications, programs,program modules, scripts, source code, object code, byte code, compiledcode, interpreted code, machine code, executable instructions, and/orthe like being executed by, for example, the processor 210. Thus, thedatabases, database instances, database management systems,data/information, applications, programs, program modules, scripts,source code, object code, byte code, compiled code, interpreted code,machine code, executable instructions, and/or the like may be used tocontrol certain aspects of the operation of the graphics computingentity 275 with the assistance of the processor 210 and operating system220, graphics production module 230, and/or graphics rendering module240.

As indicated, a number of program modules may be stored by thenon-volatile and/or volatile memory. Such program modules may includethe graphics production module 230, and/or graphics rendering module240. Those skilled in the art will appreciate that other modules may bepresent in RAM 217 to effectuate the various embodiments of the presentinvention. Furthermore, rather than described modules, other modules maybe used or embodiments may not be modular.

As indicated, in one embodiment, the graphics computing entity 275 mayalso include one or more network interfaces 208 for communicating withvarious computing entities, such as by communicating data/information,content, information, and/or similar terms used herein interchangeablythat can be transmitted, received, operated on, processed, displayed,stored, and/or the like. For instance, the graphics computing entity 275may be in communication with one or more provider systems 200 and/or oneor more user computing entities 30 via various wired or wireless network50. Such communication may be executed using a wired data/informationtransmission protocol, such as FDDI, DSL, Ethernet, ATM, frame relay,DOCSIS, PMCP, or any other wired transmission protocol. Similarly, thegraphics computing entity 275 may be configured to communicate viawireless external communication networks using any of a variety ofprotocols, such as GPRS, UMTS, CDMA2000, 1×RTT, WCDMA, TD-SCDMA, LTE,E-UTRAN, EVDO, HSPA, HSDPA, Wi-Fi, WiMAX, UWB, IR protocols, Bluetoothprotocols, wireless USB protocols, any other wireless protocol, and/orany other appropriate communications protocol. In various embodiments,the graphics computing entity 275 may be configured to communicate withvarious computing entities to provide at least one graphic for inclusionin and/or to be provided as part of a media production.

Various information is input by a user or production staff member (e.g.,operating an appropriate computing entity such as a user computingentity 30) to the graphics computing entity 275 via the networkinterface 208 and/or input/output device 204. This input information mayinclude information related to a media production; one or more graphicsto be produced, generated, and/or rendered; one or more updates to oneor more entries in the template database 250 and/or a content database260, and/or other information/data. This input information may vary,however, depending on the configuration and informational requirementsof the graphics computing entity 275.

As mentioned above, the graphics computing entity 275 also includes aninput/output device 204 for receiving and displaying data/information.The graphics computing entity 275 may include or be in communicationwith one or more input elements, such as a keyboard input, a mouseinput, a touch screen/display input, audio input, pointing device input,joystick input, keypad input, and/or the like, as indicated byinput/output device 204. The graphics computing entity 275 may alsoinclude or be in communication with one or more output elements, asindicated by input/output device 204, such as audio output, videooutput, screen/display output, motion output, movement output, and/orthe like.

Those skilled in the art will recognize that many other alternatives andarchitectures are possible and can be used to practice variousembodiments of the invention. The embodiment illustrated in FIG. 3 canbe modified in different ways or incorporated within a network and bewithin the scope of the invention. For example, one or more componentsof the graphics computing entity 275 may be located remotely from othergraphics computing entity 275 components, such as in a distributedsystem. Furthermore, one or more of the components may be combined andadditional components performing functions described herein may beincluded in the graphics computing entity 275. Thus, the graphicscomputing entity 275 can be adapted to accommodate a variety of needsand circumstances.

User Computing Entity 30

In various embodiments, the user computing entity 30 may be configuredto provide a user with a graphical user interface for producing,generating, and/or rendering one or more graphics. For example, the usercomputing entity 30 may store one or more local databases, such as localcontent databases similar to and/or that may be synchronized with thecontent databases 260 and/or a local template database similar to and/orthat may be synchronized with the template database 250. In an exampleembodiment, the user computing entity 30 may further store a graphiccontext database similar to and/or that may be synchronized with thegraphic context database stored by a graphics computing entity 275. Theuser computing entity 30 may operate an application resident thereonand/or access an application operating on the provider system 200 and/ora graphics computing entity 275 via a web browser such as InternetExplorer, Chrome, Safari, Firefox, and/or the like operating on the usercomputing entity 30. Execution of the application and/or accessing ofthe application may cause a GBI to be provided via a display or otherinput/output device of the user computing entity 30 and/or incommunication with the user computing entity 30. In an exampleembodiment, the user computing entity 30 is configured to receive userinput (e.g., via the GBI) and, based on the received user input, causethe generation, production, and/or rendering of one or more graphics bythe graphics computing entity 275 via the executed and/or accessedapplication. In an example embodiment, the user computing entity 30 isconfigured to communicate with the provider system 200 and/or one ormore graphics computing entities 275 via one or more wired and/orwireless networks. For example, as described above, a user computingentity 30 may be one or more computers, mobile phones, desktops,tablets, notebooks, phablets, set-top devices in communication with atelevision or other display device (e.g., projector or the like), smarttelevisions, laptops, wearable computer, and/or any combination ofdevices or entities adapted to perform the functions, operations, and/orprocesses described herein. In one embodiment, the user computing entity30 may comprise a combination of two or more computing devices notedabove and/or other computing devices. For example, a user computingentity 30 may comprise a set top box “paired” with a tablet.

In one embodiment, the user computing entity 30 may include one or morecomponents that are functionally similar to those of the provider system200. In one embodiment, the user computing entity 30 may include one ormore processing elements, one or more display device/input devices,volatile and non-volatile storage or memory, and/or one or morecommunications interfaces. The user computing entity 30 may alsocomprise various other systems. In particular, the user computing entity30 may include components configured to receive an enhanced mediaproduction and/or related data/information with audio, visual, and/orother output for experiencing the enhanced media production, and/or thelike. The user computing entity 30 may also be in communication with avariety of computing entities.

In various embodiments, the user computing entity 30 may include orotherwise be in communication with a variety of input devices that maybe configured to receive input from a user such that a user may controlhis/her experience of an enhanced media production. For example, in someembodiments, the user computing entity 30 may include or be incommunication with a pointing device such as a computer mouse, infraredpointing device, motion detecting device, and/or the like. In otherembodiments, the user computing entity 30 may include or be incommunication with a joy stick, remote control, handheld controllerwhich may include a d-pad, and/or the like. Thus, the user computingentity 30 may be configured to receive user input through a variety ofinput approaches and techniques.

FIG. 3 provides an illustrative schematic representative of an exampleuser computing entity 30 that can be used in conjunction withembodiments of the present invention. As shown in FIG. 3, the usercomputing entity 30 can include an antenna 112, a transmitter 104 (e.g.,radio), a receiver 106 (e.g., radio), and a processing device 108 (e.g.,CPLDs, microprocessors, multi-core processors, coprocessing entities,ASIPs, microcontrollers, and/or controllers) that provides signals toand receives signals from the transmitter 104 and receiver 106,respectively.

The signals provided to and received from the transmitter 104 and thereceiver 106, respectively, may include signaling information/data inaccordance with air interface standards of applicable wireless systems.In this regard, the user computing entity 30 may be capable of operatingwith one or more air interface standards, communication protocols,modulation types, and access types. More particularly, the usercomputing entity 30 may operate in accordance with any of a number ofwireless communication standards and protocols, such as those describedabove with regard to the provider system 200. In a particularembodiment, the user computing entity 30 may operate in accordance withmultiple wireless communication standards and protocols, such as UMTS,CDMA2000, 1×RTT, WCDMA, GSM<EDGE, TD-SCDMA, LTE, E-UTRAN, EVDO, HSPA,HSDPA, Wi-Fi, Wi-Fi Direct, WiMAX, UWB, IR, NFC, Bluetooth, USB,Bluetooth low energy (BLE), ZigBee, near field communication (NFC),infrared (IR), ultra-wideband (UWB), and/or the like. Similarly, theuser computing entity 30 may operate in accordance with multiple wiredcommunication standards and protocols, such as those described abovewith regard to the provider system via a network interface 120.

Via these communication standards and protocols, the user computingentity 30 can communicate with various other entities using conceptssuch as Unstructured Supplementary Service Data (USSD), Short MessageService (SMS), Multimedia Messaging Service (MMS), Dual-ToneMulti-Frequency Signaling (DTMF), and/or Subscriber Identity ModuleDialer (SIM dialer). The user computing entity 30 can also downloadchanges, add-ons, and updates, for instance, to its firmware, software(e.g., including executable instructions, applications, programmodules), and operating system.

According to one embodiment, the user computing entity 30 may includelocation determining aspects, devices, modules, functionalities, and/orsimilar words used herein interchangeably. For example, the usercomputing entity 30 may include outdoor positioning aspects, such as alocation module adapted to acquire, for example, latitude, longitude,altitude, geocode, course, direction, heading, speed, universal time(UTC), date, and/or various other information/data. In one embodiment,the location module can acquire data, sometimes known as ephemeris data,by identifying the number of satellites in view and the relativepositions of those satellites (e.g., using global positioning systems(GPS)). The satellites may be a variety of different satellites,including Low Earth Orbit (LEO) satellite systems, Department of Defense(DOD) satellite systems, the European Union Galileo positioning systems,the Chinese Compass navigation systems, Indian Regional Navigationalsatellite systems, and/or the like. This data can be collected using avariety of coordinate systems, such as the Decimal Degrees (DD);Degrees, Minutes, Seconds (DMS); Universal Transverse Mercator (UTM);Universal Polar Stereographic (UPS) coordinate systems; and/or the like.Alternatively, the location information/data can be determined bytriangulating the user computing entity's 30 position in connection witha variety of other systems, including wireless towers, Wi-Fi accesspoints, and/or the like. Similarly, the user computing entity 30 mayinclude indoor positioning aspects, such as a location module adapted toacquire, for example, latitude, longitude, altitude, geocode, course,direction, heading, speed, time, date, and/or various otherinformation/data. Some of the indoor systems may use various position orlocation technologies including RFID tags, indoor beacons ortransmitters, Wi-Fi access points, wireless towers, nearby computingdevices (e.g., smartphones, laptops) and/or the like. For instance, suchtechnologies may include the iBeacons, Gimbal proximity beacons, BLEtransmitters, NFC transmitters, infrared transmitters, ZigBeetransmitters, ultra-wideband transmitters, and/or the like. These indoorpositioning aspects can be used in a variety of settings to determinethe location of someone or something to within inches or centimeters.

The user computing entity 30 may also comprise a user interface (thatcan include a display 116 coupled to a processing device 108) and/or auser input interface (coupled to a processing device 108). For example,the user interface may be a user application, browser, user interface,and/or similar words used herein interchangeably executing on and/oraccessible via the user computing entity 30 to interact with and/orcause display of information/data from the provider system 200, asdescribed herein. The user input interface can comprise any of a numberof devices or interfaces allowing the user computing entity 30 toreceive data, such as a keypad 118 (hard or soft), a touch display,voice/speech or motion interfaces, or other input device. In embodimentsincluding a keypad 118, the keypad 118 can include (or cause display of)the conventional numeric (0-9) and related keys (#, *), and other keysused for operating the user computing entity 30 and may include a fullset of alphabetic keys or set of keys that may be activated to provide afull set of alphanumeric keys. In addition to providing input, the userinput interface can be used, for example, to activate or deactivatecertain functions, such as screen savers and/or sleep modes.

The user computing entity 30 can also include volatile storage or memory122 and/or non-volatile storage or memory 124, which can be embeddedand/or may be removable. For example, the non-volatile memory may beROM, PROM, EPROM, EEPROM, flash memory, MMCs, SD memory cards, MemorySticks, CBRAM, PRAM, FeRAM, NVRAM, MRAM, RRAM, SONOS, FJG RAM, Millipedememory, racetrack memory, and/or the like. The volatile memory may beRAM, DRAM, SRAM, FPM DRAM, EDO DRAM, SDRAM, DDR SDRAM, DDR2 SDRAM, DDR3SDRAM, RDRAM, TTRAM, T-RAM, Z-RAM, RIMM, DIMM, SIMM, VRAM, cache memory,register memory, and/or the like. The volatile and non-volatile storageor memory can store databases, database instances, database managementsystems, data, applications, programs, program modules, scripts, sourcecode, object code, byte code, compiled code, interpreted code, machinecode, executable instructions, and/or the like to implement thefunctions of the user computing entity 30. As indicated, this mayinclude a user application that is resident on the entity or accessiblethrough a browser or other user interface for communicating with theprovider system 200, and/or various other computing entities.

In another embodiment, the user computing entity 30 may include one ormore components or functionality that are the same or similar to thoseof the provider system 200, as described in greater detail above. Aswill be recognized, these architectures and descriptions are providedfor exemplary purposes only and are not limiting to the variousembodiments.

Consumer Device 20

In various embodiments, the consumer device 20 may be configured forreceiving at least one media production (e.g., via the CDN 10 and/ornetwork 50) and providing the at least one media production forconsumption by a consumer. For example, the media production may be anaudio and/or video media production that is provided via a displayand/or speakers (and/or the like) of the consumer device 20. Forexample, the consumer device 20 may be one or more computers, mobilephones, desktops, tablets, notebooks, phablets, set-top devices incommunication with a television or other display device (e.g., projectoror the like), smart televisions, laptops, wearable computer, and/or anycombination of devices or entities adapted to perform the functions,operations, and/or processes described herein. In one embodiment, theconsumer device 20 may comprise a combination of two or more computingdevices noted above and/or other computing devices. For example, aconsumer device 20 may comprise a set top box “paired” with a tablet. Inone embodiment, the consumer device 20 may include one or morecomponents that are functionally similar to those of the provider system200, user computing entity 30, or the CDNs 10. For example, in oneembodiment, the consumer device 20 may include one or more processingelements, one or more display device/input devices, volatile andnon-volatile storage or memory, and/or one or more communicationsinterfaces. The consumer device 20 may also comprise various othersystems.

IV. Exemplary System Operation

Example embodiments provide a system for producing, generating,publishing, and/or rendering one or more graphics for inclusion with amedia production. For example, the graphics may be provided, published,and/or aired as part of a media production. In an example embodiment, aGBI is provided (e.g., via a user interface such as display 116 of auser computing entity 30). In an example embodiment, the GBI allows auser to make a single selection (e.g., provide user input indicating oneuser selection) to populate a plurality of fields (e.g., two or morefields) within a graphic object. A graphic object may be a datastructure comprising at least some of metadata, structureinformation/data, style information/data, one or more fields, fieldvalues for one or more of the one or more fields, and/or the like. Theone or more fields may comprise text fields and content fields. Thefield values of the content fields may be pathnames indicating thelocation of a file and/or a location within the file corresponding to aparticular content item. The content items may comprise graphicalcontent items (e.g., images, photographs, drawings, diagrams, logos,digital image captures of a social media post, raw color valuescorresponding to an image or logo, and/or the like) and non-graphicalcontent items (e.g., statistics, information/data, and/or the like). Inan example embodiment, a GBI is provided (e.g., via a user computingentity 30) wherein the fields, options, and/or the like provided to auser to generate, produce, publish, and/or render a graphic areconstrained, adapted, modified, and/or updated based on user selectionof a template, graphic context, and/or other user selections (e.g.,teams and/or players playing a game that is the media production). In anexample embodiment, a first template may be used for various mediaproductions and adapted based on a user-selected graphic context for aparticular media production. For example, in an example embodiment, atemplate may comprise and/or correspond to a predetermined and/orpredefined structure information/data and predetermined and/orpredefined fields corresponding thereto. For example, a template maycorrespond to a particular type of graphic (e.g., full screen box score,lower third topic, player transitions, and/or other types of graphics).For example, a template may define the size of the graphic, the locationon the screen of the graphic, the dynamic layout of the graphic, atrigger for the graphic, content indices provided for user selection,categories provided for user selection, statistics and/or otherinformation/data provided for user selection, and/or the like. In anexample embodiment, the graphic context may comprise and/or correspondto predetermined and/or predefined style information/data. For example,the graphic context may comprise and/or correspond to a particular lookand feel of a graphic.

In an example embodiment, a GBI is provided (e.g., via a user computingentity 30) wherein various graphic fields of a template may beautomatically filed and/or populated based on user input indicatingselections of selectable option. For example, the GBI may provide theuser with a plurality of content selectors and/or other selectors. Forexample, each selector provides a drop down list and/or the like of aplurality of selectable options that a user may select from. Forexample, a player drop down menu may provide a list of players playingin the game, if the media production is a game. For example, if themedia production is a Phoenix Mercury basketball game, the user mayprovide input selecting Diana Taurasi via a player menu and a statisticname (e.g., points per game, rebounds per game, assists per game, and/orthe like) via a statistic menu, and the corresponding field of thetemplate is automatically filed with the correct statistic and/or apathname indicating a file and/or a location within a file where thecorrect statistic is stored. In an example embodiment, selection ofDiana Taurasi from the player menu may cause her current publicityphotograph to be identified and a pathname where the current publicityphotograph is stored in the content database 260 (or in the contentdatabase stored by the user computing entity 30) may be inserted into aplayer picture field of the graphic object. In an example embodiment,selection of Diana Taurasi from the player menu may cause a pathname forthe logo of the team she plays for to be added to a team logo field ofthe graphic object. In an example embodiment, selection of Diana Taurasifrom the player menu may cause a corresponding text field to bepopulated with the string “Diana Taurasi.” Various text and/or contentfields of the graphic object may be automatically filled and/orpopulated based on the single selection of Diana Taurasi from the playermenu. Thus, a plurality (e.g., two or more) fields of the graphic objectmay be automatically populated in response to a single user selection ofa selectable option (e.g., via a selector provided via the GBI). Invarious embodiments, the GBI may provide the user with a plurality ofselectors that each provide a plurality of selectable options. In anexample embodiment, wherein the media production is a professionalbasketball game (or other team sport sporting event), the plurality ofselectors may comprise one or more team menus, one or more player menus,one or more statistics menus, one or more category menus, and/or thelike. The plurality of selectors provided to the user may be determinedbased on the predetermined and/or predefined fields of the user-selectedtemplate.

In an example embodiment, a user may (e.g., via the GBI provided by auser interface such as the display 116 of the user computing entity 30)produce, generate, and/or render one or more graphics before a mediaproduction enters production. The pre-generated graphics may be exportedas still graphics, animated graphics, and/or as graphic documents (e.g.,a text file and/or other moderately-sized file comprising and/orencoding the graphic object) and applied, published, rendered, aired,and/or added to the media production during production of the mediaproduction. For example, a graphic document may be a file that encodesone or more graphics and is a kilobyte scale sized file. For example,the graphic document may comprise the graphic object of one or moregraphics. In an example embodiment, the graphic document is a plain textfile or other text file. In particular, the graphic document ismoderately-sized such that the encoding of the one or more graphics maybe easily shared between users and/or between user computing entities 30and/or graphics computing entities 275. For example, a graphic documentmay be attached to an email or transferred via another file transferprocess quickly and easily because the graphic document ismoderately-sized (e.g., kilobyte scale rather than Megabyte scale).

In an example embodiment, a graphic document may be opened, read, and/orthe like by the GBI (e.g., via the user computing entity 30, graphicscomputing entity 275, and/or the like). The graphics rendering module240 may render, publish, and/or the like the one or more graphicsencoded in the graphic document based on the encoding of the one or moregraphics stored in the graphic document. For example, the graphicsrendering module 240 may read a graphic object from the graphicdocument, access the content items referenced by the pathnames in thecontent fields of the graphic object, and render, publish, and/or thelike the graphic. In an example embodiment, it may be determined if oneor more content items referenced by a pathname in the graphic objecthave been updated since the graphic was originally generated. Forexample, the content item may be a publicity photograph of a player andit may be determined if a new publicity photograph of the player hasbeen published and/or issued since the graphic was originally generated.In another example, the content item may be a sponsor logo and it may bedetermined if the sponsor and/or the sponsor logo has changed since thegraphic was originally generated. For example, in an example embodiment,the graphic object may comprise one or more raw color values (e.g., inRGB, cmyk, or other color value) of a portion of a content itemreferenced by a pathname in the graphic object. For example, the rawcolor value may be a background color, color at a particular locationwithin an image corresponding to the content item, the color value ofone or more specified pixels of the image corresponding to the contentitem, and/or the like. The raw color value stored in the graphic objectmay then be compared to a corresponding current raw color value of acurrent image corresponding to the content item and/or the like. If theraw color values from the graphic object and the current raw color valueare the same and/or match, then the content item has likely not beupdated since the graphic was originally generated, defined, and/or thelike. If the content item was updated, the pathname in the graphicobject may be updated to reflect the pathname for the current contentitem within the working memory corresponding to the GBI and/or graphicsrendering module 240. In an example embodiment, the graphic document maybe updated to reflect the pathname for the current content item. Thegraphic may then be rendered, published, and/or the like using thecurrent content item. Various aspects of example embodiments will now bedescribed in more detail.

Exemplary User Process for Generating a Graphic

FIG. 5 illustrates processes, procedures, and/or operations completed bya user operating a user computing entity 30 to access a GBI to generatean example graphic, according to an example embodiment. Starting atblock 502, a user may operate a user computing entity 30 to access aGBI. For example, the user may operate the user computing entity 30 toopen a window, application, program and/or the like to access a GBI(e.g., provided via the graphics production module 230). In an exampleembodiment, a user may operate a user computing entity 30 to open a webbrowser, initiate a communication session (e.g., via one or more wiredor wireless communication networks 50) with a provider system 200, andaccess a graphics production module 230 of a graphics computing entity275. The graphics module 230 may then provide a GBI (e.g., via thedisplay 116) to the user via the web browser, and/or the like.

FIG. 6 provides an example screen view of a GBI 600. For example, theGBI 600 may comprise a graphic preview area 650, a graphic context menu602, a template menu 604, and/or the like. For example, the graphiccontext menu 602 may provide a user with a plurality of selectableoptions (e.g., a plurality of selectable graphic context indicatorsand/or the like). For example, the graphic context menu 602 may providethe user with a list of available graphic contexts that the user may useto provide input to the GBI (e.g., via keyboard 118, a mouse, atouchscreen, remote control, joy stick, and/or other input device of theuser computing entity 30) to select a graphic context from the list ofavailable graphic contexts. For example, the template menu 604 mayprovide a user with a plurality of selectable options (e.g., a pluralityof selectable template indicators and/or the like). For example, thetemplate menu 604 may provide the user with a list of availabletemplates that the user may use to provide input to the GBI (e.g., viakeyboard 118, a mouse, a touchscreen, remote control, joy stick, and/orother input device of the user computing entity 30) to select a templatefrom the list of available templates.

Continuing with FIG. 5, at block 504, the user may select a graphiccontext. For example, the GBI 600 may provide the user with a pluralityof graphic contexts (e.g., via a drop down menu and/or the like) fromwhich the user may provide input to select a graphic context. Forexample, each graphic context of the plurality of graphic contexts maycorrespond to a show (e.g., a television show or series), a sportsleague, a network, and/or the like. The user may use an input device ofthe user computing entity 30 to select a graphic context from theplurality of graphic contexts. For example, in an example embodiment,the user may select a show from a plurality of shows. The selected showmay be a show that corresponds to the media production for which thegraphic is being generated. For example, the media production may be anepisode of the show. A selected graphic context may define styleinformation/data for the corresponding graphic object. For example, theselected graphic context may define a text font, a logo, backgroundcolors, a sponsor, animation effects, and/or the like, of the graphicobject. For example, the graphic context may define the styleinformation/data required to make the graphic consistent with the styleguide, design, and/or look and feel of the show.

At block 506, the user may select a template. For example, the GBI 600may provide the user with a plurality of templates (e.g., via a dropdown menu and/or the like) from which the user may provide input toselect a template. The user may use an input device of the usercomputing entity 30 to select a template from the plurality oftemplates. For example, each template of the plurality of templates maycorrespond to a particular type of graphic. For example, each templatemay define a predetermined and/or predefined set of fields (e.g., textfields and/or content fields) and structure information/data. Forexample, the template defines a dynamic layout and available fields forthe graphic. For example, the dynamic layout of the template maydetermine the layout of the user-selected content of the graphic basedon the number of content indices, categories, statistics, and/or otherinformation/data selected by the user. In an example embodiment, thefields may comprise text fields and content fields. In an exampleembodiment, the field value of a text field may be a string of text. Forexample, a user may enter (e.g., type) a text string into an appropriatefield of the GBI to populate the text field with a string of text and/orto define the field value as a sting of text. In an example embodiment,the field value of a content field may be a pathname that identifies afile and/or a location within the file where the intended content itemis located. For example, the content item may be a graphic content itemsuch as an image (e.g., photograph, logo, diagram, drawing, and/or thelike). In another example, the content item may be a non-graphic contentitem such as a statistic or data/information (e.g., a team's record, abasketball player's height and position, and/or the like).

After the user selects the template, the GBI 600 may update to providethe user with a preview of the graphic and a plurality of inputmechanisms (e.g., selectors, text entry fields, and/or the like). Forexample, in response to the user selecting the template and/or thegraphic context, a graphic object may be generated based on the selectedtemplate and/or graphic context (e.g., comprising the styleinformation/data defined by the graphic context and/or the predeterminedand/or predefined plurality of fields and structure information/datadefined by the template). FIG. 7 illustrates the GBI 600 after thegraphic object has been generated, according to an example embodiment.For example, the GBI 600 comprises a current graphic projects portion610, providing a selectable and/or clickable list of the graphicsobjects that the user currently has open for editing via the GBI 600.For example, the GBI 600 may provide a preview 652 of the graphic in thegraphic preview area 650. One or more other areas of the GBI 600 may bepopulated with selectors and/or text input fields based on thepredetermined and/or predefined set of fields of the user-selectedtemplate.

For example, in the illustrated example embodiment, the user-selectedtemplate comprises predetermined and/or predefined fields that areorganized into a header section, a body section, and a footer section.Header section 620 provides the user with a trigger selector 622 forselecting one or more graphics triggers from a plurality ofuser-selectable graphics triggers and/or allow a user to enter criteriacorresponding to a graphics trigger. In an example embodiment, thegraphics trigger may indicate an event or flag in a media productionwhich will trigger the providing and/or airing of the graphic as part ofthe media production. For example, if the graphic is a score boardgraphic displaying the score, the graphic may be triggered every timethe media production returns from a commercial break. Various graphicstriggers may be used as applicable for the graphic, media production,and/or the like. The header section 620 may further comprise a titlefield 624 and/or a sub title field 626. For example, the user may selectthe title field 624 and enter text for the title (e.g., via a hard orsoft keyboard in communication with and/or provided by the usercomputing entity 30). Similarly, the user could select the sub titlefield 626 and enter sub title text. The user computing entity 30 mayreceive the input providing the title text and/or sub title text via thecorresponding title field 624 and/or sub title field 626 and update thecorresponding fields of the graphic object accordingly. In an exampleembodiment, the header section 620 may further comprise a selector for aheader logo 628. For example, the user may providing input selecting aleague logo, team logo, sponsor logo, show logo, and/or the like to beincluded in the header of the graphic.

Continuing with FIG. 5, at block 508, the user may enter the title text.For example, the user may select the title field 624 and enter (e.g.,via a soft or hard keyboard and/or the like) a title for the graphic.The user computing entity 30 may receive the input providing the titletext and update the graphic object accordingly. For example, the usercomputing entity 30 may update the graphic object based on theuser-entered title text or the user computing entity 30 may provide theuser-entered title text to the graphics computing entity 275 and thegraphics computing entity 275 may update the graphic object accordingly.The graphics computing entity 275 and/or user computing entity 30 maythen update the graphic preview 652 provided by the GBI 600 based on theupdated graphic object.

As shown in FIG. 8, the header section 654 of the graphic preview 652has been updated based on user entered title text, sub-title text, and auser-selected header logo. For example, a user has entered the text“PLAYERS OF THE YEAR” in the title field 624, the text “NBA Season 2016”in the sub text field 626, and selected the NBA logo via a selector forthe header logo 628. As shown by FIG. 8, the body section 630 of the GBI600 provides a user with one or more content selectors (e.g., 632, 634,636) by which a user may select content by selecting a selectable optionfrom a plurality of selectable options. In an example embodiment, thecombination of user selections selected via the content selectorsdetermines the content of the graphic.

Continuing with FIG. 5, at block 510, a user may select one or morecontent indexes. For example, the body section 630 of the GBI 600 mayprovide the user with one or more content index selectors 634 (e.g.,634A, 634B), as shown in FIG. 9. For example, a content index selector634 may provide a user with a plurality of selectable options eachcorresponding to a content index. The number of content index selectors634 provided by the GBI 600 and/or the context indexes available forselection may be determined based on the predetermined and/or predefinedset of fields of the user-selected template. In the illustrated example,each content index corresponds to an NBA player. The user has selectedtwo content indexes (e.g., LeBron James and Stephen Curry). In responseto receiving the user selection of a content index, one or more fieldsof the graphic object may be automatically filled. For example, thefield corresponding to a player photograph is automatically filled withthe pathname for a publicity photograph for the player identified by theselected content index. Additionally, a field of the graphic objectcorresponding to a name for the content index is automatically filledwith the selected player's last name and a field of the graphic objectcorresponding to a pathname to a team logo for the player's team areautomatically updated and/or populated based on the user selection ofthe content index via the content index selector 634 (e.g., 634A, 634B).The graphic preview 652 may be updated accordingly to include thephotographs referenced by the updated graphic object.

Returning to FIG. 5, at block 512, the user may select one or morestatistics to include in the graphic. As should be understood theparticular statistics provided for a user to choose from, the number ofstatistics a user may select, and/or the like may be determined by thepredetermined and/or predefined set of fields of the user-selectedgraphic template. In an example embodiment, the user may select one ormore categories 632 for the statistics or other selectable information,as shown in FIG. 9. For example, the categories 632 provided for userselection (e.g., via a drop down menu or the like) may includebackground information/data (e.g., position, height, weight, college,previous teams, affiliations, titles and/or awards, and/or the like),season averages, season totals, career averages, career highs, careertotals, present game single game statistics, previous single gamestatistics, and/or the like. For example, the body section 630 of theGBI 600 may include one or more pull down menus (or other selectorsproviding a plurality of selectable options) from which the user mayselect one or more categories via a category selector 632 and/or one ormore statistics and/or other information via corresponding statisticsand/or other information/data selectors 636 (e.g., 636.1, 636.2) orother information/data (e.g., background information/data and/or thelike). In an example embodiment, the one or most statistics and/or otherinformation/data provided as a user-selectable option via the statisticsand/or other information/data selectors 636 may be determined based onthe user selected category or categories (e.g., via category selector(s)632). In response to receiving user input selecting one or morestatistics and/or other information/data via the statistics and/or otherinformation/data selectors 636 via the GBI 600 the user computing entity30 (and/or the graphics computing entity 275) may identify a pathnamefor each selected statistic and/or other information/data for eachuser-selected content index. For example, the pathname identified for afirst selected statistic (e.g., selected via user input via a firststatistic selector 636.1) for a first content index (e.g., selected viauser input via a first content index selector 634A) may identify a fileand/or a location within the file where a value of the first statisticcorresponding to the first content index is located and update theappropriate field(s) of the graphic object accordingly. Thus, one ormore fields of the graphic object may be automatically filled and/orpopulated with a pathname and/or the appropriate information/data basedon a user selection of a selectable option provided via the GBI 600.

After updating the graphic object, the GBI may provide an updatedgraphic preview 652 via the graphic preview area 650, as shown in FIG.10. For example, the user computing entity 30 and/or the graphicscomputing entity 275 may generate an updated graphic preview 652 andcause the updated graphic preview 652 to be provided (e.g., displayed)via the GBI 600. For example, the illustrated graphic preview 652 hasbeen updated to include the user-selected statistics 656. As should beunderstood, the file containing the statistics may be updated in realtime or near real time during a live media production (e.g., a livebasketball game). The use of the pathname to identify the statisticwithin the graphic object allows for the statistic included in thegraphic object to be the most current available statistic (e.g., realtime or near real time accurate) when the graphic encoded by the graphicobject is published and/or played to air as part of the mediapresentation.

As noted above, a user may select one or more statistics and/or otherinformation/data to be displayed as part of the graphic via one or morestatistics and/or other information/data selector 636. FIG. 11 shows agraphic preview 652 that has been updated to include three user-selectedstatistics 656. As should be noted, the layout of the graphic has beenautomatically updated based on the number of selected statistics. Forexample, the graphic preview 652 has been modified based on theuser-selected statistics. The modification and/or update of the layoutof the graphic is determined based on the structure information/data(e.g., the dynamic layout) of the graphic template. As also shown inFIG. 11, the body section 630 of the GBI 600 may further includestatistics and/or information/data tables 638 (e.g., 638A, 638B). Forexample, a statistic and/or information/data table 638 may display theuser-selected statistics for one or more user selected categories forthe corresponding content index (e.g., selected via the correspondingcontent index selector 634). After a user selects a content index (e.g.,player(s) or team(s)) and a statistic (e.g., tonight's rebounds,tonight's steals, tonight's three point shots, etc.), for example, thereal time or near real time accurate statistic (e.g., amount of reboundsand/or the like as appropriate for the user-selected statistic) will bedisplayed in the statistic and/or information/data table 638 of the GBI600 as well as the on-air graphic and/or graphic preview 652. Thestatistic is automatically updated the on-air graphic, the graphicpreview 652, and/or the statistic and/or information/data table 638automatically as the night goes on. For example, the on-air graphic, thegraphic preview 652, and/or the statistic and/or information/data table638 may be automatically updated throughout a live media presentationwithout the user having to manually change the graphic.

Returning to FIG. 5, at block 514, the user may enter the footer text.For example, the user may select the footer field 642 located in thefooter section 640 of the GBI 600 and enter (e.g., via a soft or hardkeyboard and/or the like) footer text for the graphic. The usercomputing entity 30 may receive the input providing the footer text andupdate the graphic object accordingly. For example, the user computingentity 30 may update the graphic object based on the user-entered footertext or the user computing entity 30 may provide the user-entered footertext to the graphics computing entity 275 and the graphics computingentity 275 may update the graphic object accordingly. The graphicscomputing entity 275 and/or user computing entity 30 may then update thegraphic preview 652 provided by the GBI 600 based on the updated graphicobject. For example, FIG. 12 illustrates the graphic preview 652 updatedto include the footer text “career high,” corresponding to the footertext entered in the footer field 642. For example, the user-selectedcategory 632 may be a career high statistics category.

In the process described above, the user has selected the automaticpreview update option 662. In an example embodiment, the user may selectto not have the graphic preview 652 update automatically by unselectingthe automatic preview update option 662. If the automatic preview updateoption 662 is turned off (and/or is unselected) the user may request thegraphic preview 652 to be updated by selected the update preview button664. If the user wishes to view a preview of the graphic as an animatedgraphic, rather than a still graphic preview, the user may select theanimation preview button 666.

Continuing with FIG. 5, if the graphic is being generated during themedia production, the graphic may be played, published, rendered, and/orthe like live to air, at block 518. For example, if the user hasestablished a communication session with a live play-capable graphicscomputing entity 275A and/or is working directly on a live play-capablegraphics computing entity 275A (e.g., the user is accessing the GBI 600directly through the graphics computing entity rather than through auser computing entity 30) the user may select to produce, generate,and/or render the generated graphic live to air during the productionand/or broadcasting of a live media production. If the user is operatinga user computing entity 30 in communication with a preparation graphicscomputing entity 275B (or a live play-capable graphics computing entity275A), the user may choose to export the generated graphic at block 516.For example, the user may select to export the generated graphic as agraphic file comprising a still graphic (e.g., a JPEG file, a GIF file,a bitmap file, and/or the like), a graphic file comprising an animatedgraphic (e.g., an MP3 file, GIF file, flash file, and/or the like),and/or a graphic document (e.g., a plain text file, word file, and/orthe like). For example, the user may select one or more graphics via thecurrent graphic projects portion 610 by selecting selection box 612and/or the like. The user may then select the desired one or more exporttypes (e.g., still graphic, animated graphic, graphic document).Responsive to receiving the user input to export the graphic, the usercomputing entity 30 and/or the graphics computing entity 275 maygenerate the requested file and cause the file to be stored to the localmemory (e.g., 122, 124) of the user computing entity 30. The user maythen use the generated graphics file, email the generated graphicdocument, and/or the like as desired. For example, the user may email agenerated graphics document to a graphics operator who will becontrolling a live play-capable graphics computing entity 275A duringthe production of a live media production. The graphics operator may usethe graphics document to regenerate the graphics previously generated bythe user and play, publish, render, and/or the like the regeneratedgraphics live to air as part of the media production.

As should be understood, the particular process for generating anindividual graphic will be dependent on the user-selected template andthe information/data and/or visual the user is aiming to provide withthe graphic. The processes, procedures, and operations described withrespect to FIG. 5 are provided as an illustration of how a user maygenerate an example graphic corresponding to the graphic preview 652shown in FIG. 12.

As should be understood, the instances of a plurality of user-selectableoptions are described above and elsewhere herein as being provided via adrop down menu. For example, as illustrated in FIG. 6, the template maybe selected by a user via template menu or selector 604 (e.g., a dropdown menu). However, in various embodiments, a list and/or collection ofa plurality of user-selectable options may be provided to a user viavarious techniques. For example, a plurality of user-selectable optionsmay be provided as a list and/or collection via a drop down menu,dialogue box, pop-up window, a list and/or collection displayed directlyvia the GBI 600, and/or the like.

Exemplary Graphics Computing Entity Process for Generating a Graphic

FIGS. 13A, 13B, and 13C together provide a flowchart illustratingprocesses, procedures, and operations that may be performed by agraphics computing entity 275 to generate an example graphic, accordingto an example embodiment. Starting at block 1302, a communicationsession may be established between the graphics computing entity 275 anda user computing entity 30. For example, the graphics computing entity275 may receive a request to establish a communication session (e.g.,via a network interface 208) from a user computing entity 30 and/or aprovider system 200. Responsive to receipt and/or processing of therequest to establish a communication session (e.g., via the networkinterface 208 and/or processor 210), the graphics computing entity 275may establish a communication session with the user computing entity 30.In an example embodiment, a provider system 200 may act as anintermediary between the user computing entity 30 and the graphicscomputing entity 275. Establishment of the communication session withthe user computing entity 30 may cause the user computing entity 30 toprovide the user with a GBI 600 via a display 116 and/or the like of theuser computing entity 30. For example, the GBI 600 may be provided basedon and/or via the graphics production module 230 operating on thegraphics computing entity 275 and/or a similar application, program,module, and/or the like operating on the user computing entity 30.

At block 1304, the content database and/or template database stored bythe user computing entity 30 may be synchronized with the contentdatabase 260 and/or template database 250 stored by the graphicscomputing entity 275. In various example embodiments, the contentdatabase 260 may comprise graphic files comprising graphic content itemsand/or data files comprising non-graphic content items. In variousembodiments, the template database may store templates comprisingstructure information/data and predetermined and/or predefined sets offields. For example, the graphics computing entity 275 may provide(e.g., transmit via the network interface 208) a directory listingand/or the like corresponding to the content database 260 and/ortemplate database 250. The user computing entity 30 may receive thedirectory listing and/or the like and provide an indication of thecontent items, templates, files, and/or the like that are not presentwithin the content database and/or template database stored by the usercomputing entity 30 and/or that have been updated since the contentdatabase and/or template database stored by the user computing entity 30was last updated. The graphics computing entity 275 may then provide thecontent items, templates, files, and/or the like such that the contentdatabase and/or template database is synchronized (e.g., contains thesame files and/or the same versions of the same files) as the contentdatabase 260 and/or the template database 250 stored by the graphicscomputing entity 275. For example, the processor 210 may cause thenetwork interface 208 to provide (e.g., transmit) the content items,templates, files, and/or the like required to synchronize the contentdatabase and/or template database stored by the user computing entity 30with the content database 260 and/or the template database 250 stored bythe graphics computing entity 275.

In an example embodiment, the content database 260 may comprise adatabase directory file and/or content records (referred to as contentrecords herein) configured to indicate which content items are thecurrent content items for various content indexes, and/or the like. Forexample, the content database 260 may comprise two or more publicityphotographs for a particular player. The content record corresponding tothe particular player may indicate the pathname for the file comprisingthe current publicity photograph for the particular player (e.g.,indexed by the corresponding content index). In another example, a teamor sponsor may update its logo. The content database may be updated toinclude the new logo and a database directory file and/or acorresponding content record (e.g., indexed by the team, sponsor, and/ora content index) may be updated to identify the pathname for the filecomprising the new logo such that the user computing entity 30 and/orthe graphics computing entity 275 may generate a graphic using the newlogo rather than the previous logo.

At block 1306, an indication of user input selecting a graphic contextis received. For example, the graphics computing entity 275 may receivean indication of a user-selected graphic context. For example, the user(e.g., operating a user computing entity 30) may provide input (e.g.,via the GBI 600) selecting a graphic context from a plurality ofuser-selectable graphic context options. The user computing entity 30may provide (e.g., transmit) an indication of the user-selected graphiccontext. The graphics computing entity 275 may then receive theindication of the user-selected graphic context via the networkinterface 208, and/or the like.

At block 1308, the style information/data for the graphic may beidentified based on the user-selected graphic context. For example, thegraphics computing entity 275 may identify the style information/datacorresponding to the user-selected graphic context. For example, theprocessor 210 may processes the received indication of the user-selectedgraphic context and, responsive thereto, identify the styleinformation/data corresponding to the user-selected graphic context(e.g., via the content database 260, a graphic context database, and/orother data structure storing style information/data). In an exampleembodiment, the graphic context may correspond to a show (e.g., atelevision show or series), a sports league, a network, and/or the like.For example, the selected graphic context may corresponds to a show thatcorresponds to the media production for which the graphic is beinggenerated. For example, the media production may be an episode of theshow. A selected graphic context may define style information/data forthe corresponding graphic object. For example, the styleinformation/data may define a text font, a logo, background colors, asponsor, animation effects, and/or the like, of the graphic object. Forexample, the graphic context may define the style information/datarequired to make the graphic consistent with the style guide, design,and/or look and feel of the show or other graphic context.

At block 1310, an indication of user input selecting a template isreceived. For example, the graphics computing entity 275 may receive anindication of a user-selected template. For example, the user (e.g.,operating a user computing entity 30) may provide input (e.g., via theGBI 600) selecting a template from a plurality of user-selectabletemplate options. The user computing entity 30 may provide (e.g.,transmit) an indication of the user-selected template. The graphicscomputing entity 275 may then receive the indication of theuser-selected template via the network interface 208, and/or the like.

The structure information/data and/or the predetermined and/orpredefined set of fields for the graphic may be identified based on theuser-selected template. For example, the graphics computing entity 275may identify the structure information/data and/or predetermined and/orpredefined set of fields corresponding to the user-selected template.For example, the processor 210 may processes the received indication ofthe user-selected template and, responsive thereto, identify thestructure information/data and/or predetermined and/or predefined set offields corresponding to the user-selected template (e.g., via thetemplate database 250 and/or other data structure storing templateinformation/data). In an example embodiment, structure information/datamay correspond to a layout and/or dynamic layout of the graphic and/or alayout of one or more content items corresponding to fields of thepredetermined and/or predefined set of fields. For example, thestructure information/data may indicate where within a graphic aparticular content item or text identified by a particular field is tobe positioned, the size the particular content item or text, and/or thelike. In an example embodiment, the predetermined and/or predefined setof fields corresponding to a template defines the fields available forpopulation for generation of the graphic.

At block 1312, a graphic object is generated. For example, the graphicscomputing entity 275 may generate a graphic object based on theuser-selected graphic context and/or user-selected template. Forexample, the processor 210 and/or the like may generate a graphic objectbased on the user-selected graphic context and/or user-selectedtemplate. For example, the graphic object may comprise the styleinformation/data identified as corresponding to the user-selectedgraphic context. For example, the graphic object may comprise thestructure information/data identified as corresponding to theuser-selected template. For example, the graphic object may comprise thepredetermined and/or predefined set of fields (e.g., text fields and/orcontent fields) identified as corresponding to the user-selectedtemplate. In an example embodiment, a graphic object is a data structurethat encodes a graphic. For example, the graphic object comprises all ofthe information/data required to generate the graphic. For example, thegraphic object may comprise style information/data, structureinformation/data, and a set of fields (e.g., text fields and/or contentfields) that may be populated with text strings (e.g., text fields)and/or pathnames indicating a file and/or location within the filestoring a content item to be included in the graphic.

At block 1314, a graphic preview 652 may be generated and provided. Forexample, the graphics computing entity 275 may generate a graphicpreview 652 based on the graphic object and provide (e.g., transmit) thegraphic preview. For example, a processor 210 may generate and/or causethe generation of a graphic preview 652 based on the graphic object. Theprocessor 210 may then cause the network interface 208 to provide thegraphic preview. The user computing entity 30 may receive the graphicpreview 652 and cause the GBI 600 to provide the graphic preview via thegraphic preview area 650, as shown in FIG. 7.

At block 1316, the GBI 600 may be updated based on the graphic object.For example, the graphics computing entity 275 may cause the GBI 600 tobe updated based on the predetermined and/or predefined set of fields ofthe graphics object. For example, the processor 210 may execute thegraphics production module 230 to cause the GBI 600 to be updated basedon the predetermined and/or predefined set of fields of the graphicsobject. For example, if the graphics object includes a title text field,the GBI 600 may be updated to include a header section 620 including atitle text field 624, such that a user may provide input (e.g., a stringof text) defining the title text (e.g., the value of the title textfield of the graphic object). In another example, if the graphic objectcomprises one or more fields corresponding to player publicityphotographs, the GBI 600 may be updated to include a correspondingnumber of fields of content index selectors 634. For example, thecontent index selector 634 may provide a user with a plurality of userselectable content indexes. In the example embodiment illustrated inFIGS. 6-12, a content index identifies a player. The number of contentindex selectors 634 (e.g., 634A, 634B) provided by the GBI 600 may bedetermined based on the predetermined and/or predefined set of fields ofthe graphic object. In another example, the GBI 600 may be updated toprovide a number of statistics and/or other information/data selectors636 (e.g., 636.1, 636.2). The number of statistics and/or otherinformation/data selectors 636 provided and the/or the selectableoptions provided via the statistics and/or other information/dataselectors 636 may be determined based on the user-selected templateand/or the predetermined and/or predefined set of fields of the graphicobject. Thus, in an example embodiment, a user may be provided textentry fields and/or selectors (instances of a plurality of selectableoptions) that correspond to the predetermined and/or predefined set offields of the graphic object as determined based on the user-selectedtemplate.

Continuing with FIG. 13A, at block 1318, an indication of user inputproviding header text is received. For example, a user may provideheader text (e.g., via a hard or soft keyboard that is provided and/orin communication with a user computing entity 30) into a title field 624and/or a sub title field 626 of the GBI 600. The user computing entity30 may provide (e.g., transmit) an indication of the header text and/oran indication of the user input providing the header text. The graphicscomputing entity 275 may receive the header text and/or the indicationof the user input providing the header text (e.g., via the networkinterface 208). Continuing to FIG. 13B, at block 1320, the graphicsobject may be updated based on the received header text and/orindication user input providing header text. For example, the graphicscomputing entity 275 may process the received header text and/orindication of the user input providing the header text (e.g., by theprocessor 210) and, responsive thereto, the graphic object may beupdated accordingly. For example, a title field, sub title field, and/orthe like of the graphic object may be updated to reflect the userprovided header text.

At block 1322, the graphic preview 652 may be updated based on theupdated graphic object. For example, the graphic preview 652 may beupdated to include the received header text. For example, the processor210 may cause the graphic preview 652 to be updated to include thereceived header text and may cause the network interface 208 to providethe updated graphic preview 652 for display GBI 600 (e.g., via thedisplay 116 of the user computing entity 30. For example, FIG. 8illustrates a view of an example GBI 600 after the user has providedinput comprising header text and the graphic preview 652 has beenupdated and the updated graphic preview 652 provided in the graphicpreview area 650 of the GBI 600.

At block 1324 shown in FIG. 13B, an indication of user input selectingone or more content indices. For example, a user computing entity 30 mayreceive user input selecting one or more content indices via one or morecontent index selectors 634. The user computing entity 30 may provide(e.g., transmit) an indication of the user-selected content indices. Thegraphics computing entity 275 may receive the indication of the one ormore user-selected content indices (e.g., via the network interface208). At block 1326, responsive to receiving the indication of the oneor more user-selected content indices, the indication of the one or moreuser-selected content indices may be processed (e.g., via the processor210) and the corresponding content record may be accessed via thecontent database 260. For example, a content record may be indexedand/or accessed via a corresponding content index. A content record maycomprise one or more pathnames corresponding to various content itemscorresponding to the content index. For example, the content recordcorresponding to a first player may comprise a pathname for the firstplayer, background information/data for the first player, a teamidentifier, a pathname for a team logo, a pathname for a content recordcorresponding to the team the player plays for, a pathname for a filecomprising statistics corresponding to the player, and/or the like.

In an example embodiment, the content record corresponding to theuser-selected content index is accessed and/or identified via thecontent index. In an example embodiment, a content index may be analphanumeric identifier and/or other identifier configured to uniquelyidentify a particular set of content. For example, the contentidentifier may be a player's name or other unique identifier that isused to identify content items corresponding to the player. In anotherexample, a content index may correspond to a sponsor, a team, a seriesof meetings between two teams, and/or the like. For example, theselectable options may be provided by player name (e.g., Diana Taurasi,Brittney Griner, etc.). Each player may be associated with a contentindex that uniquely associates that player and the content itemsassociated with that player within the content database 260. Thus,responsive to the user selecting a selectable option from the pluralityof selectable options (e.g., list of player names) provided via thecontent index selector 634, the user computing entity 30 may provide thecontent index identifying and/or corresponding to the user-selectedselectable option such that the graphics computing entity 275 may accessthe corresponding content record based on the content indexcorresponding to the user selection.

At block 1328 of FIG. 13B, the graphic object is updated based on thefield values and/or pathnames of the accessed content record. Forexample, the graphics computing entity 275 may update the graphic objectbased on the field values and/or pathnames of the accessed contentrecord. For example, one or more fields of the graphic object may befilled and/or populated based on the values and/or pathnames stored bycorresponding fields of the accessed content record. For example, theuser may select a content index corresponding to LeBron James as a firstplayer, as shown in FIG. 9. The content index corresponding to LeBronJames may be provided to the graphics computing entity 275. The graphicscomputing entity 275 may then access the content record indexed by thecontent index corresponding to LeBron James. The graphic object maycomprise a fields for a first player publicity photograph, first playerfirst name, first player last name, and first player team logo. Thegraphics computing entity 275 may access the content recordcorresponding to LeBron James, populate the first player publicityphotograph with a pathname in a publicity photograph field of thecontent record, populate the first player first name with the fieldvalue of the player first name field of the content record, populate thefirst player last name with the field value of the player last namefield of the content record, populate the first player team logo fieldwith a pathname in a team logo field of the content record, and/or thelike. Thus, user selection of a content index may cause the automaticpopulation of a plurality of fields of the graphic object. In an exampleembodiment, the plurality of fields of the graphic object may be updatedwith text and/or pathname(s) pointing to a file and/or location within afile comprising a content item to be incorporated into the graphic.

Continuing with block 1330 of FIG. 13B, the graphic preview 652 may beupdated based on the updated graphic object. For example, the graphicscomputing entity 275 may generate an updated graphic preview 652 basedon the updated graphic object and provide (e.g., transmit) the updatedgraphic preview. For example, a processor 210 may generate and/or causethe generation of an updated graphic preview 652 based on the updatedgraphic object. The processor 210 may then cause the network interface208 to provide the updated graphic preview. The user computing entity 30may receive the graphic preview 652 and cause the GBI 600 to provide theupdated graphic preview 652 via the graphic preview area 650, as shownin FIG. 9.

Returning to FIG. 13B, at block 1332, an indication of user inputselecting a statistic and/or other information/data is received. Forexample, a user computing entity 30 may receive user input selecting oneor more statistics and/or other information/data via one or morestatistics and/or other information/data selectors 636. The usercomputing entity 30 may further receive user input selecting one or morecategories via one or more category selectors 632. In an exampleembodiment, the categories available for selection via the categoryselector 632 may comprise one or more of background information/data(e.g., position, height, weight, college, previous teams, affiliations,titles and/or awards, and/or the like), season averages, season totals,career averages, career highs, career totals, present game single gamestatistics, previous single game statistics, and/or the like. In anexample embodiment, statistics and/or other information/data (e.g.,background information such as position, age, height, weight, collegeand/or other affiliations, titles and/or awards, and/or the like)available for user selection via the statistic and/or otherinformation/data selectors 636 may be dependent on the media production(e.g., the type or sport and event corresponding to the mediaproduction). The user computing entity 30 may provide (e.g., transmit)an indication of the user-selected categories statistics, and/or otherinformation/data. The graphics computing entity 275 may receive theindication of the one or more user-selected categories statistics,and/or other information/data (e.g., via the network interface 208). Atblock 1334, responsive to receiving the indication of the one or moreuser-selected categories statistics, and/or other information/data, theindication of the one or more user-selected categories statistics,and/or other information/data may be processed (e.g., via the processor210) and the corresponding content record may be accessed via thecontent database 260 and/or used to updated the graphic object. Forexample, the content record may comprise a pathname indicating a fileand/or a location within the file containing user-selected statisticand/or other information/data corresponding to the user-selectedcategory.

Continuing to FIG. 13C, at block 1336, the graphic object is updatedbased on the identified pathname corresponding to the user-selectedstatistic and/or other information/data corresponding to theuser-selected category. For example, the graphics computing entity 275may update the graphic object based on the field values and/or pathnamesof the accessed content record. For example, one or more fields of thegraphic object may be filled and/or populated based on the values and/orpathnames stored by corresponding fields of the accessed content record.For example, the user may select a content index corresponding to LeBronJames as a first player, select a category corresponding to career highas the first category, and select a statistic corresponding to highestpoints in a single game, as shown in FIG. 10. The content recordcorresponding to the content index corresponding to LeBron James may beused by the graphics computing entity 275 to determine a pathname for afile and/or location within the file containing the career high pointsin a single game statistic for LeBron James. The graphics computingentity 275 may access the content record corresponding to LeBron Jamesand populate the first player first statistic corresponding to the firstcategory field with the pathname in a career high points in a singlegame field of the content record, and/or the like. Thus, user selectionof a statistic and/or other information/data via a statistic and/orother information/data selector 636 may cause automatic population(e.g., by the processor 210) of a corresponding field within the graphicobject for each user-selected content index. In an example embodiment,at least some of the statistics and/or other information/data fields ofthe graphic object may be populated with a pathname corresponding to afile and/or a location within the file where the corresponding valueand/or text string is stored. The file may be updated in real timeand/or near real time such that when the graphic is generated, the realtime and/or near real time statistics value, text string, and/or thelike may be incorporated into the graphic. In an example embodiment, oneor more fields of the graphic object may be updated with statisticvalues, text, and/or pathname(s) pointing to a file and/or locationwithin a file comprising a content item corresponding to theuser-selected statistic and/or other information/data of theuser-selected category to be incorporated into the graphic.

In an example embodiment, for statistics and/or other information/datathat is not likely or will not change during the course of a mediaproduction (e.g., during a particular game) or over the course of asport league season, the graphic object may be updated with thestatistics value, text string, and/or the like rather than a pathname inorder to reduce the number of pathnames and/or files accessed during thegeneration, rendering, publishing, and/or the like of the graphic. Thus,example embodiments provide the technical advantage of providinggraphics comprising real time and/or near real time accurate statisticsand/or other information/data while reducing/minimizing the number offile calls required to generate, render, publish, and/or the like thegraphic. For example, a player's height, position, college affiliation,previous season statistics, and/or the like will not and/or are notlikely to change over the course of a season. Similarly, previous gamestatistics, season averages, previous meeting(s) with the sameteam/opponent statistics, and/or the like will not and/or are not likelyto change over the course of the current game. Thus, if a user selectsthe category previous meeting with same team/opponent and selects thestatistic points scored, the graphic object may be updated with thestatistics value, in an example embodiment. In another example, if theuser selects the category current game statistics and selects thestatistic points scored, the graphic object may be updated with apathname indicating a file and/or a location/field within the filestoring a real time and/or near real time accurate value for the numberof points scored in the current game for the player of the user-selectedcontent index.

At block 1338, the graphic preview 652 may be updated based on theupdated graphic object. For example, the graphics computing entity 275may generate an updated graphic preview 652 based on the updated graphicobject and provide (e.g., transmit) the updated graphic preview. Forexample, a processor 210 may generate and/or cause the generation of anupdated graphic preview 652 based on the updated graphic object. Forexample, the graphics computing entity 275 may access the content offiles and/or locations within files indicated by the pathnames of thefields of the graphic object and generate a graphic preview 652 basedthereon. In an example embodiment, the graphic preview 652 may begenerated based on the content of files and/or locations within filesindicated by the pathnames of the fields of the graphic object, any textstrings in one or more fields of the graphic object, the styleinformation/data of the graphic object, and/or the structureinformation/data of the graphic object. In an example embodiment, thelayout provided by the structure information/data provides a dynamiclayout. For example, the layout of the graphic may change as the userselects more content indices, categories, statistics, and/or otherinformation/data. For example, the layout of the graphic preview 652 ischanged between FIG. 10 and FIG. 11 as the user selects additionalstatistics. The processor 210 may cause the network interface 208 toprovide the updated graphic preview 652. The user computing entity 30may receive the updated graphic preview 652 and cause the GBI 600 toprovide the updated graphic preview 652 via the graphic preview area650, as shown in FIGS. 10 and 11.

Returning to FIG. 13C, at block 1340, an indication of user inputproviding footer text is received. For example, a user may providefooter text (e.g., via a hard or soft keyboard that is provided and/orin communication with a user computing entity 30) into a footer textfield 642 in the footer section 640 of the GBI 600. The user computingentity 30 may provide (e.g., transmit) an indication of the footer textand/or an indication of the user input providing the footer text. Thegraphics computing entity 275 may receive the footer text and/or theindication of the user input providing the footer text (e.g., via thenetwork interface 208). At block 1342, the graphics object may beupdated based on the received footer text and/or indication of userinput providing footer text. For example, the graphics computing entity275 may process the received footer text and/or indication of the userinput providing the footer text (e.g., by the processor 210) and,responsive thereto, the graphic object may be updated accordingly. Forexample, a footer text field, and/or the like of the graphic object maybe updated to reflect the user provided footer text.

At block 1344, the graphic preview 652 may be updated based on theupdated graphic object. For example, the graphic preview 652 may beupdated to include the received footer text. For example, the processor210 may cause the graphic preview 652 to be updated to include thereceived footer text and may cause the network interface 208 to providethe updated graphic preview 652 for display GBI 600 (e.g., via thedisplay 116 of the user computing entity 30). For example, FIG. 12illustrates a view of an example GBI 600 after the user has providedinput comprising footer text and the graphic preview 652 has beenupdated and the updated graphic preview 652 provided in the graphicpreview area 650 of the GBI 600.

As should be understood, the user may select one or more other contentindices (e.g., via content indices selectors 634 provided via the GBI600), one or more other categories (e.g., via category selectors 632provided via the GBI 600), one or more statistics and/or otherinformation/data (e.g., via statistics and/or other information/dataselectors 636), enter and/or edit text (e.g., via a title field, subtitle field, footer field, and/or the like), enter, select, and/or edita trigger (e.g., via a trigger selector 622, and/or the like), and/ormake other modifications to the graphic via the GBI 600 in an order ofthe user's choosing. As should also be understood, some of theprocesses, procedures, operations, and/or the like described herein asbeing performed by the graphics computing entity 275 may performed bythe user computing entity 30 in various embodiments. For example, in anexample embodiment, the user computing entity 30 updates the graphicobject (e.g., via processing device 108) and provides (e.g., via thetransmitter 104 or the network interface 120) the updated graphic objectto the graphics computing entity 275 for generation of the updatedgraphic preview by the graphics computing entity 275.

Once a user has generated a graphic, the user may choose to publish,render, play and/or the like the graphic live to air (if the mediaproduction is live and the user is operating and/or accessing a liveplay-capable graphics computing entity 275A), export a graphic, or storethe graphic by the graphics production module 230, for example. Forexample, the graphics production module 230, and/or other program,application, and/or module operating on the user computing entity 30and/or graphics computing entity 275, may store graphics (e.g., thecorresponding graphic objects) generated by a user in association with auser profile corresponding to the user. For example, if the user logsout and/or the GBI 600 and/or the user computing entity 30 crashesand/or the like (e.g., battery dies, restart forced by software updated,and/or the like), when the user establishes a new communication sessionwith a graphics computing entity 275, the user may be provided withaccess to all of the graphics the user had previously generated and/orwas in the process of generating. In an example embodiment, each steptaken by the user to generate the graphic may be stored such that thegeneration of the graphic may be played back step-by-step.

Exporting a Graphic as a Still Graphic File

FIG. 14 provides a flowchart illustrating processes, procedures,operations, and/or the like that may be completed by a graphicscomputing entity 275 and/or a user computing entity 30 in accordancewith an example embodiment to export a graphic as a still graphic file.Starting at block 1402, user input is received indicating a user wouldlike to export a graphic as a still graphic file. In an exampleembodiment, the user may provide input to a user computing entity 30 viaa GBI 600 indicating that the user would like to export a graphic as astill graphic file. In an example embodiment, user input may be receivedindicating the type of still graphic file the user would like to exportthe graphic as (e.g., JPEG, GIF, bitmap, and/or the like). In an exampleembodiment, the user computing entity 30 may provide (e.g., transmit) anindication of the user input requesting exportation of the graphic to astill graphic file. The graphics computing entity 275 may receive theindication of the user input requesting exportation of the graphic to astill graphic file (e.g., via network interface 208).

At block 1404, the graphic may be rendered based on the graphic object.For example, the graphics computing entity 275 may render the graphicbased on the graphic object. For example, the processor 210 may executethe graphics rendering module 240 to render the graphic. For example,one or more files and/or locations within the file(s) may be accessedbased on pathnames stored in one or more fields of the graphic object.Text strings and/or values may be extracted from the one or more filesand/or locations within the file(s) identified by the pathnames and thetext strings and/or values may be incorporated into the graphic based onthe structure information/data relevant to the corresponding fields. Oneor more images, logos, photographs, diagrams, drawings, and/or othergraphic content may be accessed based on the pathnames stored in one ormore fields of the graphic object and the corresponding graphic contentmay be incorporated into the graphic based on the structureinformation/data relevant to the corresponding fields. Thus, one or morecontent items and user provided text may be incorporated into thegraphic based on the corresponding structure information/data of thegraphic object and in accordance with the style information/data of thegraphic object.

At block 1406, the still graphic file is generated. For example, thegraphics computing entity 275 may store the rendered graphic as a stillgraphic to a still graphic file. For example, the processor 210 maycause a still graphic file comprising the rendered graphic to be storedto memory 216. At block 1408, the still graphic file is provided. Forexample, the graphics computing entity 275 may provide (e.g., transmit)the still graphic file. For example, the processor 210 may cause thenetwork interface 208 to provide the still graphic file comprising therendered graphic. For example, the user computing entity 30 may receivethe still graphic file comprising the rendered graphic and store thestill graphic file (e.g., in memory 122, 124).

Exporting a Graphic as an Animated Graphic File

FIG. 15 provides a flowchart illustrating processes, procedures,operations, and/or the like that may be completed by a graphicscomputing entity 275 and/or a user computing entity 30 in accordancewith an example embodiment to export a graphic as an animated graphicfile. Starting at block 1502, user input is received indicating a userwould like to export a graphic as animated graphic file. In an exampleembodiment, the user may provide input to a user computing entity 30 viaa GBI 600 indicating that the user would like to export a graphic as ananimated graphic file. In an example embodiment, user input may bereceived indicating the type of animated graphic file the user wouldlike to export the graphic as (e.g., MP3, GIF, flash, and/or the like).In an example embodiment, the user computing entity 30 may provide(e.g., transmit) an indication of the user input requesting exportationof the graphic to an animated graphic file. The graphics computingentity 275 may receive the indication of the user input requestingexportation of the graphic to an animated graphic file (e.g., vianetwork interface 208).

At block 1504, the graphic may be rendered as an animated graphic basedon the graphic object. For example, the graphics computing entity 275may render the animated graphic based on the graphic object. Forexample, the processor 210 may execute the graphics rendering module 240to render the animated graphic. For example, one or more files and/orlocations within the file(s) may be accessed based on pathnames storedin one or more fields of the graphic object. Text strings and/or valuesmay be extracted from the one or more files and/or locations within thefile(s) identified by the pathnames and the text strings and/or valuesmay be incorporated into the graphic based on the structureinformation/data relevant to the corresponding fields. One or moreimages, logos, photographs, diagrams, drawings, and/or other graphiccontent may be accessed based on the pathnames stored in one or morefields of the graphic object and the corresponding graphic content maybe incorporated into the graphic based on the structure information/datarelevant to the corresponding fields. Thus, one or more content itemsand user provided text may be incorporated into the graphic based on thecorresponding structure information/data of the graphic object and inaccordance with the style information/data of the graphic object.Additionally, one or more animations, animation parameters, and/or thelike may be accessed based on the style information/data of the graphicobject for animating the animated graphic and/or for rendering thegraphic as an animated graphic.

At block 1506, the animated graphic file is generated. For example, thegraphics computing entity 275 may store the rendered graphic as ananimated graphic to an animated graphic file. For example, the processor210 may cause an animated graphic file comprising the rendered graphicto be stored to memory 216. At block 1408, the animated graphic file isprovided. For example, the graphics computing entity 275 may provide(e.g., transmit) the animated graphic file. For example, the processor210 may cause the network interface 208 to provide the animated graphicfile comprising the rendered animated graphic. For example, the usercomputing entity 30 may receive the animated graphic file comprising therendered graphic and store the animated graphic file (e.g., in memory122, 124).

Exporting One or More Graphics as a Graphic Document

As described above, still and/or animated graphics may be exported tostill and/or animated graphics files. However, graphics files tend to begenerally large. Moreover, generally, each graphic file only comprisesone graphic. Additionally, if a graphic is generated, rendered, and/orthe like prior to the beginning of a media production, any statisticsand/or other information/data and/or graphic content (e.g., logos, etc.)may not be real time or near real time accurate when the graphic ispublished and/or played to air during the media production. Thus, a user(e.g., a director) may choose to export graphics the user has generatedbefore the beginning of a media production to a graphic document suchthat the generated graphics may be easily sent (e.g., emailed) to agraphics operator who can then render the graphics in real time and/ornear real time during the media production such that the statisticsand/or other information and/or graphic content of the graphic is realtime and/or near real time accurate when the graphic is published and/orplayed to air as part of the media production. Thus, example embodimentsprovide a technical advantage in allowing a user to generate graphicsprior to the beginning of a media event (e.g., a live media event) whilestill allowing and/or ensuring aspects of the graphic are real timeand/or near real time accurate when the graphic is published and/orplayed to air as part of the media production. A graphics documentfurther provides the advantage that a plurality of graphics may bestored to the same graphics document while still allowing for individualmanipulation, editing, rendering, publishing, and/or the like of each ofthe plurality of graphics. Moreover, the graphics document, even whenencoding a plurality of graphics, is a moderately sized file (e.g., akilobyte scale file).

FIG. 16 provides a flowchart illustrating processes, procedures,operations, and/or the like that may be completed by a graphicscomputing entity 275 and/or a user computing entity 30 in accordancewith an example embodiment to export and/or encode one or more graphicsin a graphic document. Starting at block 1602, user input is receivedindicating a user would like to export and/or encode one or moregraphics in a graphic document. In an example embodiment, the user mayprovide input to a user computing entity 30 via a GBI 600 indicatingthat the user would like to export and/or encode one or more graphics ina graphic document. In an example embodiment, user input may be receivedindicating the type of graphic document the user would like to exportand/or encode the graphic into (e.g., plain text, word document, and/orthe like). In an example embodiment, the user computing entity 30 mayprovide (e.g., transmit) an indication of the user input requestingexportation and/or encoding of the graphic into a graphic document. Thegraphics computing entity 275 may receive the indication of the userinput requesting exportation and/or encoding of the graphic into agraphic document (e.g., via network interface 208).

At block 1604, the graphics computing entity 275 may encode the one ormore graphics into a graphic document. For example, the graphicscomputing entity 275 may store the graphic object corresponding to theone or more graphics to a text file such as a plan text file, worddocument, and/or the like. For example, the processor 210 may cause thememory 216 to store a graphic document comprising the graphic objectscorresponding to each of the one or more graphics to be exported and/orencoded. In various embodiments, the graphic objects may be in variousformats. For example, in one embodiment, the graphic object may be in anxml format. In another example embodiment, the graphic object may be inj son format. In yet another example embodiment, the graphic object maybe in an html format. In still another example embodiment, the graphicobject may be in a specialized format.

At block 1606, the graphic document may be provided. For example, thegraphics computing entity 275 may provide (e.g., transmit) the graphicdocument. For example, the processor 210 may cause the network interface208 to provide the graphic document comprising the one or more graphicobjects. For example, the user computing entity 30 may receive thegraphic document comprising the one or more graphic objects and storethe graphic document (e.g., in memory 122, 124). In various embodiments,the user may then email or otherwise provide the graphic document toanother user. For example, the user may attach the graphic document(which, for example, is a kilobyte scale file) to an email, SMS message,MMS message, instant messenger message, and/or otherwise transfer thedocument file to one or more other users. The other users may thenimport the graphic objects encoded in the graphic document by openingthe graphic document through the GBI 600 on an appropriate computingentity (e.g., a user computing entity 30 or a graphics computing entity275). For example, a user may import one or more graphic objects encodedin a graphic document so that the user may edit, store, render, and/orthe like a graphic based on at least one of the one or more graphicobjects.

Rendering a Pre-Generated a Graphic Using a Graphic Document

As noted above, a user may encode and/or export one or more graphicsinto a graphic document. The graphic document may be a plain text file,word document file, ANSII text file, OpenDocument text file, a LaTeXsource document, and/or other text file. In an example embodiment, auser may receive a graphic document as an attachment to an email, SMSmessage, MMS message, instant messenger message, and/or via another filetransfer technique and/or protocol. FIG. 17 provides a flowchartillustrating processes, procedures, operations, and/or the like that maybe completed by a graphics computing entity 275 and/or a user computingentity 30 in accordance with an example embodiment import and render,publish, and/or the like a pre-generated graphic using a graphicdocument. Starting at block 1702, user input is received indicating auser would like to open a graphic document via the GBI 600. In anexample embodiment, the user may provide input to a user computingentity 30 and/or graphics computing entity 275 (e.g., a liveplay-capable graphics computing entity 275A) via a GBI 600 indicatingthat the user would like to open a graphic document. For example, a usermay enter a file name of the graphic document via an appropriate entryfield of the GBI 600, a corresponding dialogue box or pop-up window,and/or the like. In another example, a user may use an appropriatedialogue box or pop-up window to browse and select the graphic document.In an example embodiment, the graphic document may comprise one or moregraphic objects encoding and/or corresponding to one or morepre-generated graphics.

The user-selected graphic document may be imported and read at block1704. For example, the user computing entity 30 and/or the graphicscomputing entity 275 may open and/or import and read, parse, and/or thelike the graphic object(s) stored in the user-selected graphic document.For example, the processing device 108 and/or the processor 210 mayread, parse and/or the like the graphic object(s) stored in theuser-selected graphic document.

At block 1706, one or more content items may be accessed based on one ormore pathnames stored as field values of one or more fields of a graphicobject read, parsed, and/or the like from the graphic document. Forexample, the user computing entity 30 and/or the graphics computingentity 275 may access one or more content items based on the pathnamesstored as field values of one or more fields of a graphic object read,parsed, and/or the like from the graphic document. For example, one ormore graphic content items (e.g., photographs, images, diagrams, logos,drawings, and/or the like) and/or one or more non-graphic content items(e.g., statistics, background information/data, and/or the like) may beaccessed from one or more files stored in the content database 260 basedon the pathnames stored as field values of the graphic object. Forexample, a graphic object may comprise a first player publicityphotograph field and the field value of the first player publicityphotograph field may be a pathname identifying a file comprising thepublicity photograph for the first player. In another example, a graphicobject may comprise a first statistic field and the field value of thefirst statistic field may be (a) a statistic value or (b) a pathnameidentifying a file and/or a location within the file where thecorresponding statistic is stored. Thus, based on the pathnames providedas field values for one or more fields of the graphic object read,parsed, and/or the like from the graphic document, one or more contentitems (e.g., graphic content items and/or non-graphic content items)from one or more files stored in the content database 260. For example,the processing device 108 and/or the processor 210 may access one ormore content items based on pathnames provided as field value of one ormore fields of a graphic object imported and/or read from the graphicdocument.

At block 1708, one or more graphic content items of the pre-generatedgraphic may be checked against a corresponding current graphic contentitem. In an example embodiment, the one or more graphic content itemsmay be logos, publicity photographs, and/or the like. For example, agraphics computing entity 275 (e.g., via processor 210) and/or a usercomputing entity 30 (e.g., processing device 108) may check one or moregraphic content items of the pre-generated graphic against acorresponding current graphic content item. For example, a contentrecord corresponding to a content index (e.g., player) to determine,identify, and/or the like a current logo for the player's team. Inanother example, a content record corresponding to a sponsor identifiedvia a sponsor index stored in a sponsor field of the graphic object maybe accessed to determine, identify, and/or the like a current logo forthe sponsor. In the example of the logo, the logo referenced via thepathname stored in the graphic object may be checked against the currentlogo to determine if the logos are the same or if the logo has beenupdated since the pre-generated graphic was originally generated.

Various techniques may be used to determine if the current logo (orother graphic content item) is the same as or different from the logoidentified by the pathname stored in the logo field (or other graphiccontent field) of the graphic object, in various embodiments. In anexample embodiment, the logo identified by the pathname stored in thegraphic object may be compared to the current logo pixel by pixel. Inanother example embodiment, a raw color value (RGB, cmyk, or other colorvalue) of one or more pixels of the logo stored in the file identifiedby the pathname stored as a field value in the graphic object may bestored as part of the graphic object. Thus, in an example embodiment,comparing and/or checking the logo referenced and/or indicated by thepathname stored in the graphic object may be compared to the currentlogo without opening and/or accessing the file identified by thepathname. The raw color values for the one or more pixels may becompared and/or checked against the corresponding pixels of the currentlogo to determine if the current logo is the same as the logo referencedand/or identified via the pathname or if the current logo is a new logo.For example, a graphic object may comprise a sponsor logo field andsponsor logo color fields. The field value of the sponsor logo field maybe a pathname identifying a file comprising the logo image. The sponsorlogo color fields may comprise raw color values for specified pixels ofthe logo image. The current logo may be accessed based on the contentrecord corresponding to the sponsor. For example, the content recordcorresponding to the sponsor may be indexed by a content indexcorresponding to the sponsor and stored in a sponsor identifier field ofthe graphic object corresponding to the pre-generated graphic. Inanother example, the content record may indicate a sponsor andcorresponding sponsor logo (e.g., the pathname for the file storing thesponsor logo) based on the user-selected graphic context of thepre-generated graphic. The raw color values of the specified pixels ofthe logo image may be compared to the raw color values of thecorresponding pixels of the current logo. It may be determined, based onthe raw color value comparison, in an example embodiment, if the logoidentified by the pathname stored in the graphic object is the same asthe current logo. For example, if the current graphic content item doesnot match the graphic content item identified by the pathname stored inthe graphic object, the graphic content item identified by the pathnamestored in the graphic object is outdated. In an example embodiment, agraphic content item may be check against a current graphic content itemvia a comparison of pathnames identifying the file(s) storing thegraphic content item and the current graphic content item. In an exampleembodiment, a graphic content item may be check against a currentgraphic content item via a comparison of one or more elements of metadata (e.g., date generated, date modified, date added to contentdatabase, file size, and/or the like) corresponding to the graphiccontent item and the current graphic content item.

At block 1710, for any graphic content items identified as outdated, thepathname in the graphic object corresponding to the outdated graphiccontent item is updated to the pathname of the current graphic contentitem. For example, the pathname for the current graphic content item maybe identified from an appropriate field of the corresponding contentrecord. For example, if a graphic object has the pathname“sponsorlogo1.jpg” as the field value of a sponsor logo field, and it isdetermined that the logo image stored as sponsorlogo1.jpg is not thesame as the current sponsor logo stored as sponsorlogo2.jpg, the fieldvalue of the sponsor logo field may be updated to the current logopathname “sponsorlogo2.jpg.” In an example embodiment, the pathname mayupdated in the active memory corresponding to the GBI 600, graphicproduction module 230, and/or graphics rendering module 240. In anexample embodiment, the pathname may be updated in both the activememory corresponding to the GBI 600, graphic production module 230,and/or graphics rendering module 240 and the graphic document. Forexample, the graphics computing entity 275 and/or the user computingentity 30 may update the pathname of any outdated graphic content itemsto the pathname identifying the corresponding current graphic contentitem. For example, the processor 210 may update a graphic object storedin memory 216 to replace the pathname of any outdated graphic contentitems with the pathname identifying the corresponding current graphiccontent item. For example, a graphic field corresponding to an outdatedgraphic content item may be updated to a field value that is thepathname of the corresponding current graphic content item. Similarly,the processing device 107 may update a graphic object stored in memory122, 124 to replace the pathname of any outdated elements with thepathname identifying the corresponding current element.

At block 1712, the graphic is rendered, published, and/or the like. Forexample, the graphics computing entity 275 may render, publish, and/orthe like the pre-generated graphic based on the graphic object. Forexample, the processor 210 may execute the graphics rendering module 240to render the pre-generated graphic. For example, one or more filesand/or locations within the file(s) may be accessed based on pathnamesstored in one or more fields of the graphic object. Text strings and/orvalues may be extracted from the one or more files and/or locationswithin the file(s) identified by the pathnames and the text stringsand/or values may be incorporated into the graphic based on thestructure information/data relevant to the corresponding fields. One ormore images, logos, photographs, diagrams, drawings, and/or othergraphic content may be accessed based on the pathnames stored in one ormore fields of the graphic object and the corresponding graphic contentmay be incorporated into the graphic based on the structureinformation/data relevant to the corresponding fields. Thus, one or morecontent items and user provided text may be incorporated into thegraphic based on the corresponding structure information/data of thegraphic object and in accordance with the style information/data of thegraphic object. The graphic may then be played and/or published live toair, provided (e.g., displayed) via a user interface (e.g., the graphicpreview area 650 of GBI 600), and/or the like.

As described above, one or more graphic content items (e.g., logos,publicity photographs, and/or other graphic content items) that arereferenced by the graphic object stored in the graphic document may bechecked to ensure that when the pre-generated graphic is rendered,published and/or the like (e.g., at some time after the graphic wasoriginally generated), the pre-generated graphic is rendered, published,and/or the like with the current graphic content item. Similarly,various field values for non-graphic content items are determined basedon a pathname indicating a file and/or location within the file storinga real time or near real time accurate value and/or text string for theintended non-graphic content. For example, a graphic may be generatedprior to the production of a media event and the graphic may be renderedfor publishing and/or playing to air with real time and/or near realtime accurate graphic and non-graphic content items. For example, agraphic to be published live to air during the last game of the seasonmay be generated before the season starts and still be published to airduring the last game of the season with real time and/or near real timeaccurate statistics, sponsor logos, team logos, player publicityphotographs, and/or the like. Thus, example embodiments provide atechnical improvement to the field of publishing and/or playing graphicsto air as part of a media production by allowing for pre-generation ofgraphics that may be published and/or played live to air with real timeand/or near real time accurate content items.

Updating a Content Database

FIG. 18 provides a flowchart illustrating processes, procedures,operations, and/or the like for updating a content database 260. Forexample, a content database 260 may comprise a plurality of filesstoring various graphical content items (e.g., logos, publicityphotographs, images, diagrams, drawings, captures of social media posts,and/or the like). For example, a content database 260 may comprise oneor more files storing various non-graphic content items (e.g.,statistics, background information/data, schedule information/data,and/or the like). For example, the content database 260 may comprisecontent records (and/or a directory listing) identifying the currentgraphical content items corresponding to a content index and identifyingthe files and/or locations within the files storing various non-graphiccontent items corresponding to the content index. In an exampleembodiment, when a new graphic content item corresponding to a contentindex is added to the content database 260, the corresponding contentrecord may be updated to identify the new graphic content item as acurrent graphic content item for a particular content index. Forexample, if a new publicity photograph of LeBron James is added to thecontent database 260, the content record corresponding to LeBron Jamesmay be updated such that the publicity photograph field of the contentrecord comprises the pathname for the new publicity photograph.

Starting at block 1802, user input is received selecting a contentrecord. For example, a user computing entity 30 may receive user input(e.g., via GBI 600) selecting a content record. In an exampleembodiment, the content record may be identified by a user typing acontent index, the user selecting a content index, a user typing and/orselecting a player name, and/or the like. For example, the user may havestored a new publicity photograph, logo, or other graphic content itemto the content database 260 and need to update the corresponding contentrecord.

At block 1804, the user-selected content record is accessed. Forexample, the user computing entity 30 may access the user-selectedcontent record. For example, the processing device 108 may access theuser-selected content record from the content database 260. At block1806, the user-selected content record and/or a portion thereof may beprovided (e.g., displayed via display 116) via a content record updateinterface that may be provided via the GBI 600.

At block 1808, user input providing update information/data may bereceived. For example, a user computing entity 30 may receive user inputproviding update information/data. For example, the updateinformation/data may comprise a field identifier and a pathname. Forexample, if the user has added a new publicity photograph for LeBronJames, then the update information/data may comprise a field identifieridentifying the publicity photograph field of the content recordcorresponding to LeBron James and a pathname for the file comprising thenew publicity photograph.

At block 1810, the user-selected content record is updated based on theupdate information/data. For example, the user computing entity 30 mayupdate the user-selected content record based on the updateinformation/data. For example, the processing devices 108 may update thefield identified by the field identifier with the pathname provided bythe update information/data. At block 1812, the content databases 260stored on various user computing entities 30 and/or graphic computingentities 275 may be synchronized. For example, as described above, whena communication session is established between a user computing entity30 and a graphics computing entity 275, the content database stored onthe user computing entity 30 and the content database 260 stored on thegraphics computing entity 275 may be synchronized. In an exampleembodiment, if a file and/or content record of a content database storedby a user computing entity 30 and the corresponding file and/or contentrecord of the content database 260 stored by the graphics computingentity 275 do not agree, are not the same, and/or the like, the fileand/or content record that was updated most recently may be determinedto be the correct file and/or content record. Thus, a change and/orupdate made to a graphic content database stored by a user computingentity 30 or a content database 260 stored by a graphics computingentity 275 may be propagated throughout the content databases stored byeach of the graphic computing entities 275 and/or user computingentities 30 of the system.

V. Conclusion

Many modifications and other embodiments of the inventions set forthherein will come to mind to one skilled in the art to which theseinventions pertain having the benefit of the teachings presented in theforegoing descriptions and the associated drawings. Therefore, it is tobe understood that the inventions are not to be limited to the specificembodiments disclosed and that modifications and other embodiments areintended to be included within the scope of the appended claims.Although specific terms are employed herein, they are used in a genericand descriptive sense only and not for purposes of limitation.

That which is claimed:
 1. A method for overlaying a graphic on a portion of a media production during broadcast of the media production, the method comprising: reading, by a computing entity comprising a processor and a memory, a graphic document comprising a graphic object encoding a graphic generated prior to the beginning of a broadcast of a media production, the graphic object comprising (1) at least one pre-production pathname indicating one of (a) a file, (b) a location within the file, or (c) both where a pre-production content item of the graphic is stored in a content database stored by the memory, (2) structure information for the graphic, (3) style information for the graphic, and (4) a pre-production raw color value of a pre-production pixel of the content item; accessing, by the computing entity, a production-time content item from the content database based at least in part on the at least one pre-production pathname; extracting, by the computing entity, a production-time raw color value for a production-time pixel of the production-time content item; determining, by the computing entity and based at least in part on a comparison of the pre-production raw color value and the production-time raw color value, whether the pre-production content item is different from the production-time content item; responsive to determining that the pre-production content item is different from the production-time content item, updating the pre-production pathname of the graphic object based at least in part on a production-time pathname of the production-time content item; causing, by the computing entity, the graphic to be rendered based at least in part on the structure information, style information, and the production-time content item; and causing, by the computing entity, the graphic to be overlaid on at least a portion of a media production during a broadcast of the media production.
 2. The method of claim 1, wherein the graphic object comprises a set of fields populated by text and/or pathnames, and the structure information corresponds to a dynamic layout of the text and the content items to form the graphic.
 3. The method of claim 1, wherein the graphic document comprises two or more graphic objects, each graphic object encoding a graphic.
 4. The method of claim 1, wherein the graphic is a still graphic or an animated graphic.
 5. The method of claim 1, further comprising receiving, by the computing entity, the graphic document as an email attachment.
 6. The method of claim 1, wherein the graphic document is a text file.
 7. The method of claim 1, wherein the at least one pre-production pathname corresponds to a graphic file or a data file stored in a content database.
 8. The method of claim 1, wherein the plurality of fields comprises (a) at least one text field and (b) at least one content field, the at least one content field being one of (i) a graphic content field or (ii) a non-graphic content field.
 9. The method of claim 1, wherein the graphic document is a kilobyte scale sized file.
 10. The method of claim 1, wherein the media production is a live broadcast.
 11. An apparatus for overlaying a graphic on a portion of a media production during broadcast of the media production, the apparatus comprising at least one processor, a network interface configured to communicate via at least one network, and a memory storing computer-executable code portions, the computer-executable code portions configured to, when executed by the at least one processor, cause the apparatus to at least: read a graphic document comprising a graphic object encoding a graphic generated prior to the beginning of a broadcast of a media production, the graphic object comprising (1) at least one pre-production pathname indicating one of (a) a file, (b) a location within the file, or (c) both where a pre-production content item of the graphic is stored in a content database stored by the memory, (2) structure information for the graphic, (3) style information for the graphic, and (4) a pre-production raw color value of a pre-production pixel of the content item; access a production-time content item from the content database based at least in part on the at least one pre-production pathname; extract a production-time raw color value for a production-time pixel of the production-time content item; determine, based at least in part on a comparison of the pre-production raw color value and the production-time raw color value, whether the pre-production content item is different from the production-time content item; responsive to determining that the pre-production content item is different from the production-time content item, update the pre-production pathname of the graphic object based at least in part on a production-time pathname of the production-time content item; cause the graphic to be rendered based at least in part on the structure information, style information, and the production-time content item; and cause the graphic to be overlaid on at least a portion of a media production during a broadcast of the media production.
 12. The apparatus of claim 11 wherein the graphic object comprises a set of fields populated by text and/or pathnames, and the structure information corresponds to a dynamic layout of the text and the content items to form the graphic.
 13. The apparatus of claim 11, wherein the graphic document comprises two or more graphic objects, each graphic object encoding a graphic.
 14. The apparatus of claim 11, wherein the graphic is a still graphic or an animated graphic.
 15. The apparatus of claim 11, wherein the computer-executable code portions, when executed by the at least one processor, are further configured to cause the apparatus to at least receive the graphic document as an email attachment.
 16. The apparatus of claim 11, wherein the at least one pre-production pathname corresponds to a graphic file or a data file stored in a content database.
 17. The apparatus of claim 11, wherein the plurality of fields comprises (a) at least one text field and (b) at least one content field, the at least one content field being one of (i) a graphic content field or (ii) a non-graphic content field.
 18. The apparatus of claim 11, wherein the graphic document is a kilobyte scale sized file.
 19. A computer program product for overlaying a graphic on a portion of a media production during broadcast of the media production, the computer program product comprising at least one non-transitory computer-readable storage medium having computer-executable program code instructions stored therein, the computer-executable program code instructions comprising program code instructions configured to: read a graphic document comprising a graphic object encoding a graphic generated prior to the beginning of a broadcast of a media production, the graphic object comprising (1) at least one pre-production pathname indicating one of (a) a file, (b) a location within the file, or (c) both where a pre-production content item of the graphic is stored in a content database stored by the memory, (2) structure information for the graphic, (3) style information for the graphic, and (4) a pre-production raw color value of a pre-production pixel of the content item; access a production-time content item from the content database based at least in part on the at least one pre-production pathname; extract a production-time raw color value for a production-time pixel of the production-time content item; determine, based at least in part on a comparison of the pre-production raw color value and the production-time raw color value, whether the pre-production content item is different from the production-time content item; responsive to determining that the pre-production content item is different from the production-time content item, update the pre-production pathname of the graphic object based at least in part on a production-time pathname of the production-time content item; cause the graphic to be rendered based at least in part on the structure information, style information, and the production-time content item; and cause the graphic to be overlaid on at least a portion of a media production during a broadcast of the media production.
 20. The computer program product of claim 19, wherein (a) the graphic document encodes two or more graphics, (b) the graphic document is a text file, and (c) the text file is a kilobyte scale sized file. 